CheckBoxStyle.xaml 2.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  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="FocusVisualStyle" Value="{DynamicResource CheckBoxFocusVisual}" />
  7. <Setter Property="Height" Value="25"/>
  8. <Setter Property="IsChecked" Value="False"/>
  9. <Setter Property="Margin" Value="0,20"/>
  10. <Setter Property="Template">
  11. <Setter.Value>
  12. <ControlTemplate TargetType="CheckBox">
  13. <Grid>
  14. <Grid.ColumnDefinitions>
  15. <ColumnDefinition Width="Auto"/>
  16. <ColumnDefinition Width="*"/>
  17. </Grid.ColumnDefinitions>
  18. <Grid Height="{TemplateBinding Height}" Width="{TemplateBinding Height}">
  19. <Rectangle x:Name="CheckBoxRectangle" Fill="LightSkyBlue" Opacity="0.3" RadiusY="5" RadiusX="5"/>
  20. <Rectangle x:Name="CheckBoxRectangleOut" Stroke="#FF06DAD1" StrokeThickness="1" RadiusY="5" RadiusX="5"/>
  21. <Grid x:Name="CheckedMark" Width="20" Height="20" Visibility="Collapsed">
  22. <Path SnapsToDevicePixels="False" StrokeThickness="3" Data="M1,9 L10,17" Stroke="White"/>
  23. <Path SnapsToDevicePixels="False" StrokeThickness="3" Data="M8,17 L20,4" Stroke="White"/>
  24. </Grid>
  25. </Grid>
  26. <TextBlock Grid.Column="1" FontSize="18" Foreground="#FF02A7F0" VerticalAlignment="Center" Margin="14,0,0,0" Text="{Binding Content,RelativeSource={RelativeSource TemplatedParent}}"/>
  27. </Grid>
  28. <ControlTemplate.Triggers>
  29. <Trigger Property="IsChecked" Value="true">
  30. <Setter TargetName="CheckedMark" Property="Visibility" Value="Visible"></Setter>
  31. <Setter TargetName="CheckBoxRectangle" Property="Fill" Value="#FF00A8E0"></Setter>
  32. <Setter TargetName="CheckBoxRectangle" Property="Opacity" Value="1"></Setter>
  33. <Setter TargetName="CheckBoxRectangleOut" Property="Stroke" Value="Transparent"></Setter>
  34. </Trigger>
  35. </ControlTemplate.Triggers>
  36. </ControlTemplate>
  37. </Setter.Value>
  38. </Setter>
  39. </Style>
  40. </ResourceDictionary>