<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"> <Style x:Key="OptionMarkFocusVisual"> <Setter Property="Control.Template"> <Setter.Value> <ControlTemplate> <Rectangle Margin="14,0,0,0" SnapsToDevicePixels="true" Stroke="{DynamicResource {x:Static SystemColors.ControlTextBrushKey}}" StrokeDashArray="1 2" StrokeThickness="1" /> </ControlTemplate> </Setter.Value> </Setter> </Style> <SolidColorBrush x:Key="OptionMark.Static.Background" Color="#FFFFFFFF" /> <SolidColorBrush x:Key="OptionMark.Static.Border" Color="#FF707070" /> <SolidColorBrush x:Key="OptionMark.MouseOver.Background" Color="White" /> <SolidColorBrush x:Key="OptionMark.MouseOver.Border" Color="Black" /> <SolidColorBrush x:Key="OptionMark.MouseOver.Glyph" Color="White" /> <SolidColorBrush x:Key="OptionMark.Disabled.Background" Color="#FFE6E6E6" /> <SolidColorBrush x:Key="OptionMark.Disabled.Border" Color="#FFBCBCBC" /> <SolidColorBrush x:Key="OptionMark.Disabled.Glyph" Color="#FF707070" /> <SolidColorBrush x:Key="OptionMark.Pressed.Background" Color="#FFD9ECFF" /> <SolidColorBrush x:Key="OptionMark.Pressed.Border" Color="#FF3C77DD" /> <SolidColorBrush x:Key="OptionMark.Pressed.Glyph" Color="White" /> <SolidColorBrush x:Key="OptionMark.Static.Glyph" Color="White" /> <ControlTemplate x:Key="MenuCheckbox" TargetType="{x:Type CheckBox}"> <Grid x:Name="templateRoot" Background="Transparent" SnapsToDevicePixels="True"> <Grid.ColumnDefinitions> <ColumnDefinition Width="Auto" /> <ColumnDefinition Width="*" /> </Grid.ColumnDefinitions> <Border x:Name="checkBoxBorder" Width="20" Height="20" HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" VerticalAlignment="{TemplateBinding VerticalContentAlignment}" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="1"> <Grid x:Name="markGrid"> <Polygon x:Name="optionMark" Width="20" Height="20" Margin="1,0,0,0" VerticalAlignment="Center" Fill="{StaticResource OptionMark.Static.Glyph}" Opacity="0" Points="15.5992424 4.59619408 16.3063492 5.30330086 5.69974747 15.9099026 0.396446609 10.6066017 1.10355339 9.89949494 5.7 14.496" /> <Rectangle x:Name="indeterminateMark" Width="20" Height="20" Fill="{StaticResource OptionMark.Static.Glyph}" Opacity="0" /> </Grid> </Border> <ContentPresenter x:Name="contentPresenter" Grid.Column="1" Margin="{TemplateBinding Padding}" HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" VerticalAlignment="{TemplateBinding VerticalContentAlignment}" Focusable="False" RecognizesAccessKey="True" SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" /> </Grid> <ControlTemplate.Triggers> <Trigger Property="HasContent" Value="true"> <Setter Property="FocusVisualStyle" Value="{StaticResource OptionMarkFocusVisual}" /> <Setter Property="Padding" Value="4,-1,0,0" /> </Trigger> <Trigger Property="IsMouseOver" Value="true"> <Setter TargetName="checkBoxBorder" Property="Background" Value="{StaticResource OptionMark.MouseOver.Background}" /> <Setter TargetName="checkBoxBorder" Property="BorderBrush" Value="{StaticResource OptionMark.MouseOver.Border}" /> <Setter TargetName="checkBoxBorder" Property="BorderThickness" Value="2" /> <Setter TargetName="optionMark" Property="Fill" Value="{StaticResource OptionMark.MouseOver.Glyph}" /> <Setter TargetName="indeterminateMark" Property="Fill" Value="{StaticResource OptionMark.MouseOver.Glyph}" /> </Trigger> <Trigger Property="IsEnabled" Value="false"> <Setter TargetName="checkBoxBorder" Property="Background" Value="{StaticResource OptionMark.Disabled.Background}" /> <Setter TargetName="checkBoxBorder" Property="BorderBrush" Value="{StaticResource OptionMark.Disabled.Border}" /> <Setter TargetName="optionMark" Property="Fill" Value="{StaticResource OptionMark.Disabled.Glyph}" /> <Setter TargetName="indeterminateMark" Property="Fill" Value="{StaticResource OptionMark.Disabled.Glyph}" /> </Trigger> <Trigger Property="IsPressed" Value="true"> <Setter TargetName="checkBoxBorder" Property="Background" Value="{StaticResource OptionMark.Pressed.Background}" /> <Setter TargetName="checkBoxBorder" Property="BorderBrush" Value="{StaticResource OptionMark.Pressed.Border}" /> <Setter TargetName="optionMark" Property="Fill" Value="{StaticResource OptionMark.Pressed.Glyph}" /> <Setter TargetName="indeterminateMark" Property="Fill" Value="{StaticResource OptionMark.Pressed.Glyph}" /> </Trigger> <Trigger Property="IsChecked" Value="true"> <Setter TargetName="optionMark" Property="Opacity" Value="1" /> <Setter TargetName="indeterminateMark" Property="Opacity" Value="0" /> <Setter TargetName="checkBoxBorder" Property="Background" Value="#FF0078D7" /> </Trigger> <Trigger Property="IsChecked" Value="{x:Null}"> <Setter TargetName="optionMark" Property="Opacity" Value="0" /> <Setter TargetName="indeterminateMark" Property="Opacity" Value="1" /> </Trigger> </ControlTemplate.Triggers> </ControlTemplate> </ResourceDictionary>