<?xml version="1.0" encoding="utf-8"?>
<UserControl x:Class="C1Extended_Demo.DemoPropertyGrid" mc:Ignorable="d" d:DesignHeight="379" d:DesignWidth="513" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:c1="http://schemas.componentone.com/winfx/2006/xaml" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006">
    <Grid x:Name="LayoutRoot">
        <Grid.ColumnDefinitions>
            <ColumnDefinition Width="*" />
            <ColumnDefinition Width="10" />
            <ColumnDefinition Width="*" />
        </Grid.ColumnDefinitions>

		<!-- Desing Time surface -->
        <Grid x:Name="grid">
            <c1:C1CheckeredBorder />
            <CheckBox HorizontalAlignment="Left" VerticalAlignment="Top" Click="CheckBox_Click">
                <c1:C1SplitButton x:Name="_targetRectangle" Height="28" Width="120" MaxHeight="100" MaxWidth="100" d:LayoutOverrides="Width, Height, HorizontalMargin" />
            </CheckBox>
            <CheckBox HorizontalAlignment="Left" VerticalAlignment="Top" Margin="0,42,0,0" Click="CheckBox_Click">
                <Button x:Name="btnTest" Content="click to changed the content" />
            </CheckBox>
            <CheckBox HorizontalAlignment="Left" VerticalAlignment="Top" Margin="0,83,0,0" Click="CheckBox_Click">
                <ContentControl Content="ContentControl" />
            </CheckBox>
        </Grid>

        <!-- Property grid -->
        <Grid Grid.Column="2">
            <c1:C1PropertyGrid x:Name="_propertyGrid" VerticalAlignment="Stretch" AutoGenerateProperties="False" LabelWidth="130" PropertyBoxAdded="_propertyGrid_PropertyBoxAdded" SelectedObject="{Binding ElementName=_targetRectangle}">
                <c1:C1PropertyGrid.PropertyAttributes>
                    <c1:PropertyAttribute MemberName="Width" Description="Gets or sets the width of the button." DefaultValue="120" MinimumValue="0" Category="Size" />
                    <c1:PropertyAttribute MemberName="Height" Description="Gets or sets the suggested height of the button." DefaultValue="28" MinimumValue="0" Category="Size" />
                    <c1:PropertyAttribute MemberName="Background" Description="Gets or sets a brush that provides the background of the button." Category="Colors" />
                    <c1:PropertyAttribute MemberName="Foreground" Description="Gets or sets a brush that provides the foreground of the button." Category="Colors" />
                    <c1:PropertyAttribute MemberName="BorderBrush" Description="Gets or sets a brush that describes the border background of the button." Category="Colors" />
                    <c1:PropertyAttribute MemberName="MouseOverBrush" Description="Gets or sets a brush used to highlight the button when the mouse is over it." Category="Colors" />
                    <c1:PropertyAttribute MemberName="PressedBrush" Description="Gets or sets a brush used to highlight the button when the mouse is pressed." Category="Colors" />
                    <c1:PropertyAttribute MemberName="HorizontalAlignment" Description="Gets or sets the horizontal alignment characteristics applied to the button when it is composed within a layout parent, such as a panel or items control." DefaultValue="Stretch" Category="Others" />
                    <c1:PropertyAttribute MemberName="IsEnabled" Description="Gets or sets a value indicating whether the user can interact with the control." Category="Others" />
                    <c1:PropertyAttribute MemberName="Opacity" Description="Gets or sets the degree of the object's opacity." DefaultValue="0.8" MinimumValue="0" MaximumValue="1" Category="Others" />
                    <c1:PropertyAttribute MemberName="Header" Description="Gets or sets the value of the Header dependency property." DefaultValue="Header" Category="Others" />
                    <c1:PropertyAttribute MemberName="Content" Description="Gets or sets the value of the Content dependency property." DefaultValue="Content" Category="Others" />
                    <c1:PropertyAttribute MemberName="MaxWidth" Description="Gets or sets the maximum width constraint of the button." DefaultValue="150" MinimumValue="0" Category="Size" />
                    <c1:PropertyAttribute MemberName="MaxHeight" Description="Gets or sets the maximum height constraint of the button." DefaultValue="150" MinimumValue="0" Category="Size" />
                </c1:C1PropertyGrid.PropertyAttributes>
            </c1:C1PropertyGrid>
        </Grid>
    </Grid>
</UserControl>