wpf button 之win8风格按钮

网上下来来的代码片段,win 8风格按钮模板

        <ControlTemplate TargetType="Button" x:Key="win8" >
            <!--背景色-->
            <Border x:Name="back"
                    Opacity="0.8"
                    CornerRadius="3">
                <Border.BitmapEffect>
                    <OuterGlowBitmapEffect Opacity="0.7"
                                           GlowSize="0"
                                           GlowColor="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=(Button.Background).(SolidColorBrush.Color)}" />
                </Border.BitmapEffect>
                <Border.Background>
                    <LinearGradientBrush StartPoint="0,0"
                                         EndPoint="0,1.5">
                        <GradientBrush.GradientStops>
                            <GradientStopCollection>
                                <GradientStop Color="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=(Button.Background).(SolidColorBrush.Color)}"
                                              Offset="0" />
                                <GradientStop Color="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=(Button.Background).(SolidColorBrush.Color)}"
                                              Offset="0.4" />
                                <GradientStop Color="#FFF"
                                              Offset="1" />
                            </GradientStopCollection>
                        </GradientBrush.GradientStops>
                    </LinearGradientBrush>
                </Border.Background>
                <!--前景色及边框-->
                <Border x:Name="fore"
                        BorderThickness="1"
                        CornerRadius="3"
                        BorderBrush="#5555">
                    <Border.Background>
                        <LinearGradientBrush StartPoint="0,0"
                                             EndPoint="0,1">
                            <GradientBrush.GradientStops>
                                <GradientStopCollection>
                                    <GradientStop Color="#6FFF"
                                                  Offset="0.5" />
                                    <GradientStop Color="#1111"
                                                  Offset="0.51" />
                                </GradientStopCollection>
                            </GradientBrush.GradientStops>
                        </LinearGradientBrush>
                    </Border.Background>
                    <!--按钮内容-->
                    <ContentPresenter x:Name="content"
                                      HorizontalAlignment="Center"
                                      VerticalAlignment="Center"
                                      Content="{TemplateBinding  Content}">
                        <ContentPresenter.BitmapEffect>
                            <DropShadowBitmapEffect Color="#000"
                                                    Direction="-90"
                                                    ShadowDepth="2"
                                                    Softness="0.1"
                                                    Opacity="0.3" />
                        </ContentPresenter.BitmapEffect>
                    </ContentPresenter>
                </Border>
            </Border>
            <!--触发器-->
            <ControlTemplate.Triggers>
                <!--鼠标移入移出-->
                <Trigger Property="IsMouseOver"
                         Value="True">
                    <Trigger.EnterActions>
                        <BeginStoryboard>
                            <Storyboard>
                                <DoubleAnimation To="6"
                                                 Duration="0:0:0.2"
                                                 Storyboard.TargetName="back"
                                                 Storyboard.TargetProperty="(Border.BitmapEffect).(OuterGlowBitmapEffect.GlowSize)" />
                                <ColorAnimation To="#AFFF"
                                                BeginTime="0:0:0.2"
                                                Duration="0:0:0.2"
                                                Storyboard.TargetName="fore"
                                                Storyboard.TargetProperty="(Border.Background).(LinearGradientBrush.GradientStops)[0].(GradientStop.Color)" />
                                <ColorAnimation To="#3FFF"
                                                BeginTime="0:0:0.2"
                                                Duration="0:0:0.2"
                                                Storyboard.TargetName="fore"
                                                Storyboard.TargetProperty="(Border.Background).(LinearGradientBrush.GradientStops)[1].(GradientStop.Color)" />
                            </Storyboard>
                        </BeginStoryboard>
                    </Trigger.EnterActions>
                    <Trigger.ExitActions>
                        <BeginStoryboard>
                            <Storyboard>
                                <DoubleAnimation Duration="0:0:0.2"
                                                 Storyboard.TargetName="back"
                                                 Storyboard.TargetProperty="(Border.BitmapEffect).(OuterGlowBitmapEffect.GlowSize)" />
                                <ColorAnimation Duration="0:0:0.2"
                                                Storyboard.TargetName="fore"
                                                Storyboard.TargetProperty="(Border.Background).(LinearGradientBrush.GradientStops)[0].(GradientStop.Color)" />
                                <ColorAnimation Duration="0:0:0.2"
                                                Storyboard.TargetName="fore"
                                                Storyboard.TargetProperty="(Border.Background).(LinearGradientBrush.GradientStops)[1].(GradientStop.Color)" />
                            </Storyboard>
                        </BeginStoryboard>
                    </Trigger.ExitActions>
                </Trigger>
                <!--按钮按下弹起-->
                <Trigger Property="IsPressed"
                         Value="True">
                    <Trigger.EnterActions>
                        <BeginStoryboard>
                            <Storyboard>
                                <DoubleAnimation To="3"
                                                 Duration="0:0:0.1"
                                                 Storyboard.TargetName="back"
                                                 Storyboard.TargetProperty="(Border.BitmapEffect).(OuterGlowBitmapEffect.GlowSize)" />
                                <ColorAnimation To="#3AAA"
                                                Duration="0:0:0.1"
                                                Storyboard.TargetName="fore"
                                                Storyboard.TargetProperty="(Border.Background).(LinearGradientBrush.GradientStops)[0].(GradientStop.Color)" />
                                <ColorAnimation To="#2111"
                                                Duration="0:0:0.1"
                                                Storyboard.TargetName="fore"
                                                Storyboard.TargetProperty="(Border.Background).(LinearGradientBrush.GradientStops)[1].(GradientStop.Color)" />
                            </Storyboard>
                        </BeginStoryboard>
                    </Trigger.EnterActions>
                    <Trigger.ExitActions>
                        <BeginStoryboard>
                            <Storyboard>
                                <DoubleAnimation Duration="0:0:0.1"
                                                 Storyboard.TargetName="back"
                                                 Storyboard.TargetProperty="(Border.BitmapEffect).(OuterGlowBitmapEffect.GlowSize)" />
                                <ColorAnimation Duration="0:0:0.1"
                                                Storyboard.TargetName="fore"
                                                Storyboard.TargetProperty="(Border.Background).(LinearGradientBrush.GradientStops)[0].(GradientStop.Color)" />
                                <ColorAnimation Duration="0:0:0.1"
                                                Storyboard.TargetName="fore"
                                                Storyboard.TargetProperty="(Border.Background).(LinearGradientBrush.GradientStops)[1].(GradientStop.Color)" />
                            </Storyboard>
                        </BeginStoryboard>
                    </Trigger.ExitActions>
                </Trigger>
                <!--按钮失效-->
                <Trigger Property="IsEnabled"
                         Value="False">
                    <Setter Property="Foreground"
                            Value="#B444" />
                    <Trigger.EnterActions>
                        <BeginStoryboard>
                            <Storyboard>
                                <DoubleAnimation To="0"
                                                 Duration="0:0:0.3"
                                                 Storyboard.TargetName="back"
                                                 Storyboard.TargetProperty="(Border.BitmapEffect).(OuterGlowBitmapEffect.GlowSize)" />
                                <DoubleAnimation To="1"
                                                 Duration="0:0:0.1"
                                                 Storyboard.TargetName="content"
                                                 Storyboard.TargetProperty="(ContentPresenter.BitmapEffect).(DropShadowBitmapEffect.Opacity)" />
                                <DoubleAnimation To="-135"
                                                 Duration="0:0:0.1"
                                                 Storyboard.TargetName="content"
                                                 Storyboard.TargetProperty="(ContentPresenter.BitmapEffect).(DropShadowBitmapEffect.Direction)" />
                                <ColorAnimation To="#FFF"
                                                Duration="0:0:0.3"
                                                Storyboard.TargetName="content"
                                                Storyboard.TargetProperty="(ContentPresenter.BitmapEffect).(DropShadowBitmapEffect.Color)" />
                                <ColorAnimation To="#D555"
                                                Duration="0:0:0.3"
                                                Storyboard.TargetName="fore"
                                                Storyboard.TargetProperty="(Border.BorderBrush).(SolidColorBrush.Color)" />
                                <ColorAnimation To="#CEEE"
                                                Duration="0:0:0.3"
                                                Storyboard.TargetName="fore"
                                                Storyboard.TargetProperty="(Border.Background).(LinearGradientBrush.GradientStops)[0].(GradientStop.Color)" />
                                <ColorAnimation To="#CDDD"
                                                Duration="0:0:0.3"
                                                Storyboard.TargetName="fore"
                                                Storyboard.TargetProperty="(Border.Background).(LinearGradientBrush.GradientStops)[1].(GradientStop.Color)" />
                            </Storyboard>
                        </BeginStoryboard>
                    </Trigger.EnterActions>
                    <Trigger.ExitActions>
                        <BeginStoryboard>
                            <Storyboard>
                                <DoubleAnimation Duration="0:0:0.1"
                                                 Storyboard.TargetName="back"
                                                 Storyboard.TargetProperty="(Border.BitmapEffect).(OuterGlowBitmapEffect.GlowSize)" />
                                <DoubleAnimation Duration="0:0:0.1"
                                                 Storyboard.TargetName="content"
                                                 Storyboard.TargetProperty="(ContentPresenter.BitmapEffect).(DropShadowBitmapEffect.Opacity)" />
                                <DoubleAnimation Duration="0:0:0.1"
                                                 Storyboard.TargetName="content"
                                                 Storyboard.TargetProperty="(ContentPresenter.BitmapEffect).(DropShadowBitmapEffect.Direction)" />
                                <ColorAnimation Duration="0:0:0.1"
                                                Storyboard.TargetName="content"
                                                Storyboard.TargetProperty="(ContentPresenter.BitmapEffect).(DropShadowBitmapEffect.Color)" />
                                <ColorAnimation Duration="0:0:0.1"
                                                Storyboard.TargetName="fore"
                                                Storyboard.TargetProperty="(Border.BorderBrush).(SolidColorBrush.Color)" />
                                <ColorAnimation Duration="0:0:0.1"
                                                Storyboard.TargetName="fore"
                                                Storyboard.TargetProperty="(Border.Background).(LinearGradientBrush.GradientStops)[0].(GradientStop.Color)" />
                                <ColorAnimation Duration="0:0:0.1"
                                                Storyboard.TargetName="fore"
                                                Storyboard.TargetProperty="(Border.Background).(LinearGradientBrush.GradientStops)[1].(GradientStop.Color)" />
                            </Storyboard>
                        </BeginStoryboard>
                    </Trigger.ExitActions>
                </Trigger>
            </ControlTemplate.Triggers>
        </ControlTemplate>


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
YOLO高分设计资源源码,详情请查看资源内容中使用说明 YOLO高分设计资源源码,详情请查看资源内容中使用说明 YOLO高分设计资源源码,详情请查看资源内容中使用说明 YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值