漂亮的按钮样式-button

 <Style x:Key="buttonVSM" TargetType="{x:Type Button}">
        <!--  定义样式属性  -->
        <Setter Property="Foreground" Value="Black" />
        <Setter Property="Template">
            <Setter.Value>
                <!--  定义控件模板  -->
                <ControlTemplate TargetType="{x:Type Button}">
                    <Border x:Name="RootElement"
                            Width="Auto"
                            Height="24"
                            HorizontalAlignment="Stretch"
                            BorderBrush="#FF939393"
                            BorderThickness="1"
                            CornerRadius="2">
                        <Border.Background>
                            <LinearGradientBrush StartPoint="0.5,0" EndPoint="0.5,1">
                                <GradientStop x:Name="stop1" Offset="0" Color="#FFF4F4F4" />
                                <GradientStop x:Name="stop2" Offset="1" Color="#FFF4F4F4" />
                                <GradientStop x:Name="stop3" Offset="0.483" Color="#FFF4F4F4" />
                                <GradientStop x:Name="stop4" Offset="0.608" Color="#FFF4F4F4" />
                            </LinearGradientBrush>
                        </Border.Background>
                        <!--  视觉状态管理组  -->
                        <sw:VisualStateManager.VisualStateGroups>
                            <sw:VisualStateGroup>
                                <!--  按钮普通状态  -->
                                <sw:VisualState x:Name="Normal">
                                    <Storyboard>
                                        <ThicknessAnimationUsingKeyFrames Storyboard.TargetName="RootElement" Storyboard.TargetProperty="(BorderThickness)">
                                            <EasingThicknessKeyFrame KeyTime="0" Value="0" />
                                        </ThicknessAnimationUsingKeyFrames>
                                        <ObjectAnimationUsingKeyFrames Storyboard.TargetName="RootElement" Storyboard.TargetProperty="(CornerRadius)">
                                            <DiscreteObjectKeyFrame KeyTime="0">
                                                <DiscreteObjectKeyFrame.Value>
                                                    <CornerRadius>2</CornerRadius>
                                                </DiscreteObjectKeyFrame.Value>
                                            </DiscreteObjectKeyFrame>
                                        </ObjectAnimationUsingKeyFrames>
                                        <ColorAnimationUsingKeyFrames Storyboard.TargetName="stop1" Storyboard.TargetProperty="Color">
                                            <EasingColorKeyFrame KeyTime="0" Value="Transparent" />
                                        </ColorAnimationUsingKeyFrames>
                                        <ColorAnimationUsingKeyFrames Storyboard.TargetName="stop2" Storyboard.TargetProperty="Color">
                                            <EasingColorKeyFrame KeyTime="0" Value="#00FBFBFB" />
                                        </ColorAnimationUsingKeyFrames>
                                        <ColorAnimationUsingKeyFrames Storyboard.TargetName="stop4" Storyboard.TargetProperty="Color">
                                            <EasingColorKeyFrame KeyTime="0" Value="#00C0E6E9" />
                                        </ColorAnimationUsingKeyFrames>
                                        <ColorAnimationUsingKeyFrames Storyboard.TargetName="stop3" Storyboard.TargetProperty="Color">
                                            <EasingColorKeyFrame KeyTime="0" Value="#00CDEBEE" />
                                        </ColorAnimationUsingKeyFrames>
                                        <ColorAnimationUsingKeyFrames Storyboard.TargetName="RootElement" Storyboard.TargetProperty="(BorderBrush).(SolidColorBrush.Color)">
                                            <EasingColorKeyFrame KeyTime="0" Value="#00000000" />
                                        </ColorAnimationUsingKeyFrames>
                                    </Storyboard>
                                </sw:VisualState>
                                <!--  鼠标经过按钮的状态  -->
                                <sw:VisualState x:Name="Pressed">
                                    <Storyboard>
                                        <ObjectAnimationUsingKeyFrames Storyboard.TargetName="RootElement" Storyboard.TargetProperty="(Border.CornerRadius)">
                                            <DiscreteObjectKeyFrame KeyTime="0">
                                                <DiscreteObjectKeyFrame.Value>
                                                    <CornerRadius>2</CornerRadius>
                                                </DiscreteObjectKeyFrame.Value>
                                            </DiscreteObjectKeyFrame>
                                        </ObjectAnimationUsingKeyFrames>
                                        <ThicknessAnimationUsingKeyFrames Storyboard.TargetName="RootElement" Storyboard.TargetProperty="(Border.BorderThickness)">
                                            <EasingThicknessKeyFrame KeyTime="0" Value="1" />
                                        </ThicknessAnimationUsingKeyFrames>
                                        <ColorAnimationUsingKeyFrames Storyboard.TargetName="stop2" Storyboard.TargetProperty="Color">
                                            <EasingColorKeyFrame KeyTime="0" Value="#FF92E4F1" />
                                        </ColorAnimationUsingKeyFrames>
                                        <ColorAnimationUsingKeyFrames Storyboard.TargetName="stop1" Storyboard.TargetProperty="Color">
                                            <EasingColorKeyFrame KeyTime="0" Value="#FDA7E0E9" />
                                        </ColorAnimationUsingKeyFrames>
                                        <ColorAnimationUsingKeyFrames Storyboard.TargetName="RootElement" Storyboard.TargetProperty="(Border.BorderBrush).(SolidColorBrush.Color)">
                                            <EasingColorKeyFrame KeyTime="0" Value="#FFF7D639" />
                                        </ColorAnimationUsingKeyFrames>
                                        <ColorAnimationUsingKeyFrames Storyboard.TargetName="stop3" Storyboard.TargetProperty="Color">
                                            <EasingColorKeyFrame KeyTime="0" Value="#FFEFF3F3" />
                                        </ColorAnimationUsingKeyFrames>
                                        <ColorAnimationUsingKeyFrames Storyboard.TargetName="stop4" Storyboard.TargetProperty="Color">
                                            <EasingColorKeyFrame KeyTime="0" Value="#FFD5F1F3" />
                                        </ColorAnimationUsingKeyFrames>
                                        <ColorAnimationUsingKeyFrames Storyboard.TargetName="RootElement" Storyboard.TargetProperty="(Panel.Background).(GradientBrush.GradientStops)[1].(GradientStop.Color)">
                                            <EasingColorKeyFrame KeyTime="0" Value="#FFFCE58C" />
                                        </ColorAnimationUsingKeyFrames>
                                        <ColorAnimationUsingKeyFrames Storyboard.TargetName="RootElement" Storyboard.TargetProperty="(Panel.Background).(GradientBrush.GradientStops)[3].(GradientStop.Color)">
                                            <EasingColorKeyFrame KeyTime="0" Value="#FFFCE58C" />
                                        </ColorAnimationUsingKeyFrames>
                                        <ColorAnimationUsingKeyFrames Storyboard.TargetName="RootElement" Storyboard.TargetProperty="(Panel.Background).(GradientBrush.GradientStops)[0].(GradientStop.Color)">
                                            <EasingColorKeyFrame KeyTime="0" Value="#FFFCE58C" />
                                        </ColorAnimationUsingKeyFrames>
                                        <ColorAnimationUsingKeyFrames Storyboard.TargetName="RootElement" Storyboard.TargetProperty="(Panel.Background).(GradientBrush.GradientStops)[2].(GradientStop.Color)">
                                            <EasingColorKeyFrame KeyTime="0" Value="#FFFCE58C" />
                                        </ColorAnimationUsingKeyFrames>
                                    </Storyboard>
                                </sw:VisualState>
                                <!--  按钮按下状态  -->
                                <sw:VisualState x:Name="MouseOver">
                                    <Storyboard>
                                        <ColorAnimationUsingKeyFrames Storyboard.TargetName="stop2" Storyboard.TargetProperty="Color">
                                            <EasingColorKeyFrame KeyTime="0" Value="#FF99D7DC" />
                                        </ColorAnimationUsingKeyFrames>
                                        <ObjectAnimationUsingKeyFrames Storyboard.TargetName="RootElement" Storyboard.TargetProperty="(Border.CornerRadius)">
                                            <DiscreteObjectKeyFrame KeyTime="0">
                                                <DiscreteObjectKeyFrame.Value>
                                                    <CornerRadius>2</CornerRadius>
                                                </DiscreteObjectKeyFrame.Value>
                                            </DiscreteObjectKeyFrame>
                                        </ObjectAnimationUsingKeyFrames>
                                        <ThicknessAnimationUsingKeyFrames Storyboard.TargetName="RootElement" Storyboard.TargetProperty="(Border.BorderThickness)">
                                            <EasingThicknessKeyFrame KeyTime="0" Value="1" />
                                        </ThicknessAnimationUsingKeyFrames>
                                        <ColorAnimationUsingKeyFrames Storyboard.TargetName="stop1" Storyboard.TargetProperty="Color">
                                            <EasingColorKeyFrame KeyTime="0" Value="#FFF7F9F9" />
                                        </ColorAnimationUsingKeyFrames>
                                        <DoubleAnimationUsingKeyFrames Storyboard.TargetName="stop3" Storyboard.TargetProperty="Offset">
                                            <EasingDoubleKeyFrame KeyTime="0" Value="0.487" />
                                        </DoubleAnimationUsingKeyFrames>
                                        <ColorAnimationUsingKeyFrames Storyboard.TargetName="RootElement" Storyboard.TargetProperty="(Border.BorderBrush).(SolidColorBrush.Color)">
                                            <EasingColorKeyFrame KeyTime="0" Value="#FFF7D639" />
                                        </ColorAnimationUsingKeyFrames>
                                        <ColorAnimationUsingKeyFrames Storyboard.TargetName="RootElement" Storyboard.TargetProperty="(Panel.Background).(GradientBrush.GradientStops)[3].(GradientStop.Color)">
                                            <EasingColorKeyFrame KeyTime="0" Value="#FFFCE58C" />
                                        </ColorAnimationUsingKeyFrames>
                                        <ColorAnimationUsingKeyFrames Storyboard.TargetName="RootElement" Storyboard.TargetProperty="(Panel.Background).(GradientBrush.GradientStops)[1].(GradientStop.Color)">
                                            <EasingColorKeyFrame KeyTime="0" Value="#FFFCE38A" />
                                        </ColorAnimationUsingKeyFrames>
                                        <ColorAnimationUsingKeyFrames Storyboard.TargetName="RootElement" Storyboard.TargetProperty="(Panel.Background).(GradientBrush.GradientStops)[2].(GradientStop.Color)">
                                            <EasingColorKeyFrame KeyTime="0" Value="#FFFCF9E0" />
                                        </ColorAnimationUsingKeyFrames>
                                        <ColorAnimationUsingKeyFrames Storyboard.TargetName="RootElement" Storyboard.TargetProperty="(Panel.Background).(GradientBrush.GradientStops)[0].(GradientStop.Color)">
                                            <EasingColorKeyFrame KeyTime="0" Value="#FFFCF9E0" />
                                        </ColorAnimationUsingKeyFrames>
                                        <DoubleAnimationUsingKeyFrames Storyboard.TargetName="RootElement" Storyboard.TargetProperty="(Panel.Background).(GradientBrush.GradientStops)[3].(GradientStop.Offset)">
                                            <EasingDoubleKeyFrame KeyTime="0" Value="0.678" />
                                        </DoubleAnimationUsingKeyFrames>
                                        <DoubleAnimationUsingKeyFrames Storyboard.TargetName="RootElement" Storyboard.TargetProperty="(Panel.Background).(GradientBrush.GradientStops)[1].(GradientStop.Offset)">
                                            <EasingDoubleKeyFrame KeyTime="0" Value="0" />
                                        </DoubleAnimationUsingKeyFrames>
                                        <DoubleAnimationUsingKeyFrames Storyboard.TargetName="RootElement" Storyboard.TargetProperty="(Panel.Background).(GradientBrush.GradientStops)[0].(GradientStop.Offset)">
                                            <EasingDoubleKeyFrame KeyTime="0" Value="0.97" />
                                        </DoubleAnimationUsingKeyFrames>
                                        <DoubleAnimationUsingKeyFrames Storyboard.TargetName="RootElement" Storyboard.TargetProperty="(Panel.Background).(GradientBrush.GradientStops)[2].(GradientStop.Offset)">
                                            <EasingDoubleKeyFrame KeyTime="0" Value="0" />
                                        </DoubleAnimationUsingKeyFrames>
                                    </Storyboard>
                                </sw:VisualState>
                            </sw:VisualStateGroup>
                        </sw:VisualStateManager.VisualStateGroups>
                        <!--  显示按钮文本  -->
                        <ContentPresenter HorizontalAlignment="Center"
                                          VerticalAlignment="Center"
                                          Content="{TemplateBinding Content}" />
                    </Border>
                </ControlTemplate>
            </Setter.Value>
        </Setter>
    </Style>

 

 

在页面中运用:

 <Button Content="添加新规则" x:Name="button_Add" Style="{StaticResource ResourceKey=buttonVSM}" >  </Button>

转载于:https://www.cnblogs.com/shyyj/archive/2012/02/09/2344137.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值