All the controls missing in WPF. Over 1 million downloads.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

273 lines
19 KiB

<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:chrome="clr-namespace:Microsoft.Windows.Controls.Chromes"
xmlns:local="clr-namespace:Microsoft.Windows.Controls" >
<!-- =============================================================================== -->
<!-- ButtonChrome -->
<!-- =============================================================================== -->
<CornerRadius x:Key="ControlOuterBorderCornerRadius">2.75</CornerRadius>
<CornerRadius x:Key="ControlInnerBorderCornerRadius">1.75</CornerRadius>
<!-- Normal -->
<SolidColorBrush x:Key="ControlOuterBorder_Normal" Color="#FF707070" />
<LinearGradientBrush x:Key="ControlInnerBorder_Normal" EndPoint="0,1" StartPoint="0,0">
<GradientStop Color="#FAFFFFFF" Offset="0"/>
<GradientStop Color="#85FFFFFF" Offset="1"/>
</LinearGradientBrush>
<LinearGradientBrush x:Key="ControlBackground_Normal" EndPoint="0,1" StartPoint="0,0">
<GradientStop Color="#F3F3F3" Offset="0"/>
<GradientStop Color="#EBEBEB" Offset="0.5"/>
<GradientStop Color="#DDDDDD" Offset="0.5"/>
<GradientStop Color="#CDCDCD" Offset="1"/>
</LinearGradientBrush>
<!--Mouse Over-->
<SolidColorBrush x:Key="ControlOuterBorder_MouseOver" Color="#3C7FB1" />
<LinearGradientBrush x:Key="ControlInnerBorder_MouseOver" EndPoint="0,1" StartPoint="0,0">
<GradientStop Color="#FAFFFFFF" Offset="0"/>
<GradientStop Color="#85FFFFFF" Offset="1"/>
</LinearGradientBrush>
<LinearGradientBrush x:Key="ControlBackground_MouseOver" EndPoint="0,1" StartPoint="0,0">
<GradientStop Color="#FFEAF6FD" Offset="0"/>
<GradientStop Color="#FFD9F0FC" Offset="0.50"/>
<GradientStop Color="#FFBEE6FD" Offset="0.50"/>
<GradientStop Color="#FFA7D9F5" Offset="1"/>
</LinearGradientBrush>
<!-- Pressed -->
<SolidColorBrush x:Key="ControlOuterBorder_Pressed" Color="#2C628B" />
<LinearGradientBrush x:Key="ControlInnerBorder_Pressed" EndPoint="0,1" StartPoint="0,0">
<GradientStop Color="#FAFFFFFF" Offset="0"/>
<GradientStop Color="#85FFFFFF" Offset="1"/>
</LinearGradientBrush>
<LinearGradientBrush x:Key="ControlBackground_Pressed" EndPoint="0,1" StartPoint="0,0">
<GradientStop Color="#C2E4F6" Offset="0.5"/>
<GradientStop Color="#ABDAF3" Offset="0.5"/>
<GradientStop Color="#90CBEB" Offset="1"/>
</LinearGradientBrush>
<!-- Focused -->
<SolidColorBrush x:Key="ControlOuterBorder_Focused" Color="#FF707070" />
<SolidColorBrush x:Key="ControlInnerBorder_Focused" Color="#F900CCFF" />
<LinearGradientBrush x:Key="ControlBackground_Focused" EndPoint="0,1" StartPoint="0,0">
<GradientStop Color="#FFEAF6FD" Offset="0"/>
<GradientStop Color="#FFD9F0FC" Offset="0.50"/>
<GradientStop Color="#FFBEE6FD" Offset="0.50"/>
<GradientStop Color="#FFA7D9F5" Offset="1"/>
</LinearGradientBrush>
<!-- Disabled -->
<SolidColorBrush x:Key="ControlOuterBorder_Disabled" Color="#ADB2B5" />
<LinearGradientBrush x:Key="ControlInnerBorder_Disabled" EndPoint="0,1" StartPoint="0,0">
<GradientStop Color="#FAFFFFFF" Offset="0"/>
<GradientStop Color="#85FFFFFF" Offset="1"/>
</LinearGradientBrush>
<SolidColorBrush x:Key="ControlBackground_Disabled" Color="#F4F4F4" />
<Style TargetType="{x:Type chrome:ButtonChrome}">
<Setter Property="IsTabStop" Value="False" />
<Setter Property="SnapsToDevicePixels" Value="True" />
<Setter Property="FocusVisualStyle" Value="{x:Null}" />
<Setter Property="Background" Value="{StaticResource ControlBackground_Normal}" />
<Setter Property="BorderBrush" Value="{StaticResource ControlOuterBorder_Normal}" />
<Setter Property="BorderThickness" Value="1" />
<Setter Property="CornerRadius" Value="{StaticResource ControlOuterBorderCornerRadius}" />
<Setter Property="InnerCornerRadius" Value="{StaticResource ControlInnerBorderCornerRadius}" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type chrome:ButtonChrome}">
<Grid>
<Border x:Name="OuterBorder" BorderThickness="{TemplateBinding BorderThickness}" CornerRadius="{TemplateBinding CornerRadius}" BorderBrush="{TemplateBinding BorderBrush}" Background="{TemplateBinding Background}">
<Border x:Name="InnerBorder" BorderThickness="{TemplateBinding BorderThickness}" CornerRadius="{TemplateBinding InnerCornerRadius}" BorderBrush="{StaticResource ControlInnerBorder_Normal}" />
</Border>
<Border x:Name="MouseOverVisual" Opacity="0" Visibility="Collapsed" BorderThickness="{TemplateBinding BorderThickness}" CornerRadius="{TemplateBinding CornerRadius}" BorderBrush="{StaticResource ControlOuterBorder_MouseOver}" Background="{StaticResource ControlBackground_MouseOver}">
<Border x:Name="MouseOverInnerVisual" BorderThickness="{TemplateBinding BorderThickness}" CornerRadius="{TemplateBinding InnerCornerRadius}" BorderBrush="{StaticResource ControlInnerBorder_MouseOver}" />
</Border>
<Border x:Name="PressedVisual" Opacity="0" Visibility="Collapsed" BorderThickness="{TemplateBinding BorderThickness}" CornerRadius="{TemplateBinding CornerRadius}" BorderBrush="{StaticResource ControlOuterBorder_Pressed}" Background="{StaticResource ControlBackground_Pressed}">
<Border x:Name="PressedInnerVisual" BorderThickness="{TemplateBinding BorderThickness}" CornerRadius="{TemplateBinding InnerCornerRadius}" BorderBrush="{StaticResource ControlInnerBorder_Pressed}" />
</Border>
<Border x:Name="FocusVisual" Opacity="0" Visibility="Collapsed" BorderThickness="{TemplateBinding BorderThickness}" CornerRadius="{TemplateBinding CornerRadius}" BorderBrush="{StaticResource ControlOuterBorder_Focused}" Background="{StaticResource ControlBackground_Focused}">
<Border x:Name="FocusInnerVisual" BorderThickness="1" CornerRadius="{TemplateBinding InnerCornerRadius}" BorderBrush="{StaticResource ControlInnerBorder_Focused}" />
</Border>
<ContentPresenter Margin="{TemplateBinding Padding}"
IsEnabled="{TemplateBinding IsEnabled}"
Content="{TemplateBinding Content}"
ContentStringFormat="{TemplateBinding ContentStringFormat}"
ContentTemplate="{TemplateBinding ContentTemplate}"
ContentTemplateSelector="{TemplateBinding ContentTemplateSelector}" />
</Grid>
<ControlTemplate.Triggers>
<!-- If button is disabled, not checked, and is rendered normal -->
<MultiTrigger>
<MultiTrigger.Conditions>
<Condition Property="RenderEnabled" Value="False" />
<Condition Property="RenderChecked" Value="False" />
</MultiTrigger.Conditions>
<Setter TargetName="OuterBorder" Property="BorderBrush" Value="{StaticResource ControlOuterBorder_Disabled}" />
<Setter TargetName="InnerBorder" Property="BorderBrush" Value="{StaticResource ControlInnerBorder_Disabled}" />
<Setter TargetName="OuterBorder" Property="Background" Value="{StaticResource ControlBackground_Disabled}" />
</MultiTrigger>
<!-- if button is enabled and pressed -->
<MultiTrigger>
<MultiTrigger.Conditions>
<Condition Property="RenderEnabled" Value="True" />
<Condition Property="RenderPressed" Value="True" />
</MultiTrigger.Conditions>
<MultiTrigger.EnterActions>
<BeginStoryboard>
<Storyboard>
<ObjectAnimationUsingKeyFrames Storyboard.TargetName="PressedVisual" Storyboard.TargetProperty="Visibility">
<DiscreteObjectKeyFrame KeyTime="00:00:00">
<DiscreteObjectKeyFrame.Value>
<Visibility>Visible</Visibility>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
<DoubleAnimationUsingKeyFrames Storyboard.TargetName="PressedVisual" Storyboard.TargetProperty="Opacity">
<LinearDoubleKeyFrame KeyTime="00:00:00.050" Value="1" />
</DoubleAnimationUsingKeyFrames>
</Storyboard>
</BeginStoryboard>
</MultiTrigger.EnterActions>
<MultiTrigger.ExitActions>
<BeginStoryboard>
<Storyboard>
<ObjectAnimationUsingKeyFrames Storyboard.TargetName="PressedVisual" Storyboard.TargetProperty="Visibility">
<DiscreteObjectKeyFrame KeyTime="00:00:00.115">
<DiscreteObjectKeyFrame.Value>
<Visibility>Collapsed</Visibility>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
<DoubleAnimationUsingKeyFrames Storyboard.TargetName="PressedVisual" Storyboard.TargetProperty="Opacity">
<LinearDoubleKeyFrame KeyTime="00:00:00.115" Value="0" />
</DoubleAnimationUsingKeyFrames>
</Storyboard>
</BeginStoryboard>
</MultiTrigger.ExitActions>
</MultiTrigger>
<!-- if button is enabled, is not checked, the mouse is over, and not pressed -->
<MultiTrigger>
<MultiTrigger.Conditions>
<Condition Property="RenderEnabled" Value="True" />
<Condition Property="RenderChecked" Value="False" />
<Condition Property="RenderMouseOver" Value="True" />
<Condition Property="RenderPressed" Value="False" />
</MultiTrigger.Conditions>
<MultiTrigger.EnterActions>
<BeginStoryboard>
<Storyboard>
<ObjectAnimationUsingKeyFrames Storyboard.TargetName="MouseOverVisual" Storyboard.TargetProperty="Visibility">
<DiscreteObjectKeyFrame KeyTime="00:00:00">
<DiscreteObjectKeyFrame.Value>
<Visibility>Visible</Visibility>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
<DoubleAnimationUsingKeyFrames Storyboard.TargetName="MouseOverVisual" Storyboard.TargetProperty="Opacity">
<LinearDoubleKeyFrame KeyTime="00:00:00.115" Value="1" />
</DoubleAnimationUsingKeyFrames>
</Storyboard>
</BeginStoryboard>
</MultiTrigger.EnterActions>
<MultiTrigger.ExitActions>
<BeginStoryboard>
<Storyboard>
<ObjectAnimationUsingKeyFrames Storyboard.TargetName="MouseOverVisual" Storyboard.TargetProperty="Visibility">
<DiscreteObjectKeyFrame KeyTime="00:00:00.150">
<DiscreteObjectKeyFrame.Value>
<Visibility>Collapsed</Visibility>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
<DoubleAnimationUsingKeyFrames Storyboard.TargetName="MouseOverVisual" Storyboard.TargetProperty="Opacity">
<LinearDoubleKeyFrame KeyTime="00:00:00.150" Value="0" />
</DoubleAnimationUsingKeyFrames>
</Storyboard>
</BeginStoryboard>
</MultiTrigger.ExitActions>
</MultiTrigger>
<!-- if button is enabled, checked, he mouse is not over, and it is not pressed -->
<MultiTrigger>
<MultiTrigger.Conditions>
<Condition Property="RenderEnabled" Value="True" />
<Condition Property="RenderChecked" Value="True" />
<Condition Property="RenderMouseOver" Value="False" />
<Condition Property="RenderPressed" Value="False" />
</MultiTrigger.Conditions>
<Setter TargetName="OuterBorder" Property="BorderBrush" Value="{StaticResource ControlOuterBorder_Pressed}" />
<Setter TargetName="InnerBorder" Property="BorderBrush" Value="{StaticResource ControlInnerBorder_Pressed}" />
<Setter TargetName="OuterBorder" Property="Background" Value="{StaticResource ControlBackground_Pressed}" />
</MultiTrigger>
<!-- if button is focused, is enabled, not pressed, and the mouse is not over -->
<MultiTrigger>
<MultiTrigger.Conditions>
<Condition Property="RenderFocused" Value="True" />
<Condition Property="RenderEnabled" Value="True" />
<Condition Property="RenderPressed" Value="False" />
<Condition Property="RenderMouseOver" Value="False" />
</MultiTrigger.Conditions>
<MultiTrigger.EnterActions>
<BeginStoryboard>
<Storyboard>
<ObjectAnimationUsingKeyFrames Storyboard.TargetName="FocusVisual" Storyboard.TargetProperty="Visibility">
<DiscreteObjectKeyFrame KeyTime="00:00:00">
<DiscreteObjectKeyFrame.Value>
<Visibility>Visible</Visibility>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
<DoubleAnimationUsingKeyFrames Storyboard.TargetName="FocusVisual" Storyboard.TargetProperty="Opacity">
<LinearDoubleKeyFrame KeyTime="00:00:00.25" Value="1" />
</DoubleAnimationUsingKeyFrames>
</Storyboard>
</BeginStoryboard>
</MultiTrigger.EnterActions>
<MultiTrigger.ExitActions>
<BeginStoryboard>
<Storyboard>
<ObjectAnimationUsingKeyFrames Storyboard.TargetName="FocusVisual" Storyboard.TargetProperty="Visibility">
<DiscreteObjectKeyFrame KeyTime="00:00:00.115">
<DiscreteObjectKeyFrame.Value>
<Visibility>Collapsed</Visibility>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
<DoubleAnimationUsingKeyFrames Storyboard.TargetName="FocusVisual" Storyboard.TargetProperty="Opacity">
<LinearDoubleKeyFrame KeyTime="00:00:00.115" Value="0" />
</DoubleAnimationUsingKeyFrames>
</Storyboard>
</BeginStoryboard>
</MultiTrigger.ExitActions>
</MultiTrigger>
<!-- if not rendered normally -->
<MultiTrigger>
<MultiTrigger.Conditions>
<Condition Property="RenderNormal" Value="False" />
<Condition Property="RenderChecked" Value="False" />
</MultiTrigger.Conditions>
<Setter TargetName="OuterBorder" Property="BorderBrush" Value="Transparent" />
<Setter TargetName="InnerBorder" Property="BorderBrush" Value="{x:Null}" />
<Setter TargetName="OuterBorder" Property="Background" Value="Transparent" />
</MultiTrigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</ResourceDictionary>