WPF Button按钮模板样式修改(二)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/BYH371256/article/details/83414152

本章讲述:Button模板样式修改,不显示边框,只显示图标,点击按钮图标动态旋转;

主要采用采用图片做背景和数据触发器,触发故事板(Storyboard)事件,实现按钮中图片按角度旋转;

<Button Width="30" Height="30">
    <Button.Style>
        <Style TargetType="Button">
            <Setter Property="Template">
                <Setter.Value>
                    <ControlTemplate TargetType="Button">
                        <Viewbox Width="30" Height="30">
                            <Image x:Name="RefreshImge_ctrl" Source="Pack://application:,,,/Real_WPF;component/Resources/Left/refresh.png" Width="25" Height="25"
                               RenderTransformOrigin="0.5,0.5" Stretch="None">
                                <Image.RenderTransform>
                                    <RotateTransform x:Name="imageRefresh" Angle="0">
                                    </RotateTransform>
                                </Image.RenderTransform>
                            </Image>
                        </Viewbox>
                        <ControlTemplate.Triggers>
                            <DataTrigger Binding="{Binding IsActive}" Value="true">
                                <DataTrigger.EnterActions>
                                    <BeginStoryboard x:Name="sb">
                                        <Storyboard >
                                            <DoubleAnimation RepeatBehavior="Forever" Storyboard.TargetName="imageRefresh" Storyboard.TargetProperty="Angle" To="360" Duration="0:0:3"/>
                                        </Storyboard>
                                    </BeginStoryboard>
                                </DataTrigger.EnterActions>
                                <DataTrigger.ExitActions>
                                    <StopStoryboard BeginStoryboardName="sb"/>
                                </DataTrigger.ExitActions>
                            </DataTrigger>
                        </ControlTemplate.Triggers>
                    </ControlTemplate>
                </Setter.Value>
            </Setter>
        </Style>
    </Button.Style>
</Button>

效果图:

猜你喜欢

转载自blog.csdn.net/BYH371256/article/details/83414152