Advertisement
Vitalii

WP7 checkbox style for light theme

Mar 12th, 2014
196
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 5.95 KB | None | 0 0
  1.  
  2.     <SolidColorBrush x:Key="CheckBoxDisabledBackgroundThemeBrush" Color="#66CACACA" />
  3.  
  4.     <Style x:Key="CheckBoxDarkStyle" BasedOn="{StaticResource PhoneRadioButtonCheckBoxBase}" TargetType="CheckBox">
  5.         <Setter Property="Template">
  6.             <Setter.Value>
  7.                 <ControlTemplate TargetType="CheckBox">
  8.                     <Grid Background="Transparent">
  9.                         <VisualStateManager.VisualStateGroups>
  10.                             <VisualStateGroup x:Name="CommonStates">
  11.                                 <VisualState x:Name="Normal"/>
  12.                                 <VisualState x:Name="MouseOver"/>
  13.                                 <VisualState x:Name="Pressed">
  14.                                     <Storyboard>
  15.                                         <ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="Background" Storyboard.TargetName="CheckBackground">
  16.                                             <DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource CheckBoxDisabledBackgroundThemeBrush}"/>
  17.                                         </ObjectAnimationUsingKeyFrames>
  18.                                         <ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="BorderBrush" Storyboard.TargetName="CheckBackground">
  19.                                             <DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource PhoneRadioCheckBoxPressedBorderBrush}"/>
  20.                                         </ObjectAnimationUsingKeyFrames>
  21.                                         <ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="Fill" Storyboard.TargetName="CheckMark">
  22.                                             <DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource PhoneRadioCheckBoxCheckBrush}"/>
  23.                                         </ObjectAnimationUsingKeyFrames>
  24.                                         <ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="Fill" Storyboard.TargetName="IndeterminateMark">
  25.                                             <DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource PhoneRadioCheckBoxCheckBrush}"/>
  26.                                         </ObjectAnimationUsingKeyFrames>
  27.                                     </Storyboard>
  28.                                 </VisualState>
  29.                                 <VisualState x:Name="Disabled">
  30.                                     <Storyboard>
  31.                                         <ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="Background" Storyboard.TargetName="CheckBackground">
  32.                                             <DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource CheckBoxDisabledBackgroundThemeBrush}"/>
  33.                                         </ObjectAnimationUsingKeyFrames>
  34.                                         <ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="BorderBrush" Storyboard.TargetName="CheckBackground">
  35.                                             <DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource PhoneDisabledBrush}"/>
  36.                                         </ObjectAnimationUsingKeyFrames>
  37.                                         <ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="Fill" Storyboard.TargetName="CheckMark">
  38.                                             <DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource PhoneRadioCheckBoxCheckDisabledBrush}"/>
  39.                                         </ObjectAnimationUsingKeyFrames>
  40.                                         <ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="Fill" Storyboard.TargetName="IndeterminateMark">
  41.                                             <DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource PhoneRadioCheckBoxCheckDisabledBrush}"/>
  42.                                         </ObjectAnimationUsingKeyFrames>
  43.                                     </Storyboard>
  44.                                 </VisualState>
  45.                             </VisualStateGroup>
  46.                             <VisualStateGroup x:Name="CheckStates">
  47.                                 <VisualState x:Name="Checked">
  48.                                     <Storyboard>
  49.                                         <ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="Visibility" Storyboard.TargetName="CheckMark">
  50.                                             <DiscreteObjectKeyFrame KeyTime="0">
  51.                                                 <DiscreteObjectKeyFrame.Value>
  52.                                                     <Visibility>Visible</Visibility>
  53.                                                 </DiscreteObjectKeyFrame.Value>
  54.                                             </DiscreteObjectKeyFrame>
  55.                                         </ObjectAnimationUsingKeyFrames>
  56.                                     </Storyboard>
  57.                                 </VisualState>
  58.                                 <VisualState x:Name="Unchecked"/>
  59.                                 <VisualState x:Name="Indeterminate">
  60.                                     <Storyboard>
  61.                                         <ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="Visibility" Storyboard.TargetName="IndeterminateMark">
  62.                                             <DiscreteObjectKeyFrame KeyTime="0">
  63.                                                 <DiscreteObjectKeyFrame.Value>
  64.                                                     <Visibility>Visible</Visibility>
  65.                                                 </DiscreteObjectKeyFrame.Value>
  66.                                             </DiscreteObjectKeyFrame>
  67.                                         </ObjectAnimationUsingKeyFrames>
  68.                                     </Storyboard>
  69.                                 </VisualState>
  70.                             </VisualStateGroup>
  71.                         </VisualStateManager.VisualStateGroups>
  72.                         <Grid Margin="{StaticResource PhoneTouchTargetLargeOverhang}">
  73.                             <Grid.ColumnDefinitions>
  74.                                 <ColumnDefinition Width="32"/>
  75.                                 <ColumnDefinition Width="*"/>
  76.                             </Grid.ColumnDefinitions>
  77.                             <Border x:Name="CheckBackground" BorderBrush="{StaticResource CheckBoxPointerOverBorderThemeBrush}" BorderThickness="{StaticResource PhoneBorderThickness}" Background="{TemplateBinding Background}" HorizontalAlignment="Left" Height="32" IsHitTestVisible="False" VerticalAlignment="Center" Width="32"/>
  78.                             <Rectangle x:Name="IndeterminateMark" Fill="{StaticResource PhoneRadioCheckBoxCheckBrush}" HorizontalAlignment="Center" Height="16" IsHitTestVisible="False" Grid.Row="0" Visibility="Collapsed" VerticalAlignment="Center" Width="16"/>
  79.                             <Path x:Name="CheckMark" Data="M0,119 L31,92 L119,185 L267,0 L300,24 L122,250 z" Fill="{StaticResource PhoneRadioCheckBoxCheckBrush}" HorizontalAlignment="Center" Height="18" IsHitTestVisible="False" Stretch="Fill" StrokeThickness="2" StrokeLineJoin="Round" Visibility="Collapsed" VerticalAlignment="Center" Width="24"/>
  80.                             <ContentControl x:Name="ContentContainer" ContentTemplate="{TemplateBinding ContentTemplate}" Content="{TemplateBinding Content}" Grid.Column="1" Foreground="{StaticResource CheckBoxContentForegroundThemeBrush}" HorizontalContentAlignment="{TemplateBinding HorizontalContentAlignment}" Margin="12,0,0,0" Padding="{TemplateBinding Padding}" VerticalContentAlignment="{TemplateBinding VerticalContentAlignment}"/>
  81.                         </Grid>
  82.                     </Grid>
  83.                 </ControlTemplate>
  84.             </Setter.Value>
  85.         </Setter>
  86.     </Style>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement