本章讲述: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>
效果图: