CheckBoxStyle.xaml 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. <ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  2. xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
  3. <Style x:Key="CheckBoxStyle" TargetType="{x:Type CheckBox}">
  4. <Setter Property="SnapsToDevicePixels" Value="true" />
  5. <Setter Property="OverridesDefaultStyle" Value="False" />
  6. <Setter Property="Height" Value="22"/>
  7. <Setter Property="IsChecked" Value="False"/>
  8. <Setter Property="Template">
  9. <Setter.Value>
  10. <ControlTemplate TargetType="CheckBox">
  11. <Grid>
  12. <Grid.ColumnDefinitions>
  13. <ColumnDefinition Width="Auto"/>
  14. <ColumnDefinition Width="*"/>
  15. </Grid.ColumnDefinitions>
  16. <Grid Height="{TemplateBinding Height}" Width="{TemplateBinding Height}">
  17. <Rectangle x:Name="CheckBoxRectangle" Fill="White" Opacity="0.3" RadiusY="2" RadiusX="2"/>
  18. <Rectangle x:Name="CheckBoxRectangleOut" Stroke="Black" StrokeThickness="1" RadiusY="2" RadiusX="1"/>
  19. <Grid x:Name="CheckedMark" Width="20" Height="20" Visibility="Collapsed">
  20. <Path SnapsToDevicePixels="False" StrokeThickness="3" Data="M1,9 L10,17" Stroke="White"/>
  21. <Path SnapsToDevicePixels="False" StrokeThickness="3" Data="M8,17 L20,4" Stroke="White"/>
  22. </Grid>
  23. </Grid>
  24. <TextBlock Grid.Column="1" FontSize="18" Foreground="Black" VerticalAlignment="Center" Margin="14,0,0,0" Text="{Binding Content,RelativeSource={RelativeSource TemplatedParent}}"/>
  25. </Grid>
  26. <ControlTemplate.Triggers>
  27. <Trigger Property="IsChecked" Value="True">
  28. <Setter TargetName="CheckedMark" Property="Visibility" Value="Visible"></Setter>
  29. <Setter TargetName="CheckBoxRectangle" Property="Fill" Value="#FF00A8E0"></Setter>
  30. <Setter TargetName="CheckBoxRectangle" Property="Opacity" Value="1"></Setter>
  31. <Setter TargetName="CheckBoxRectangleOut" Property="Stroke" Value="Transparent"></Setter>
  32. </Trigger>
  33. </ControlTemplate.Triggers>
  34. </ControlTemplate>
  35. </Setter.Value>
  36. </Setter>
  37. </Style>
  38. </ResourceDictionary>