我是 WPF 新手,有一个可能很愚蠢的问题。
我试图用相同的动画(旋转 360 度)为 4 个按钮设置动画,当其中一个被单击时,只有这个被动画化。
这是我到目前为止所拥有的:
<Window.Resources>
<Storyboard x:Key="Storyboard" BeginTime="00:00:00" Duration="00:00:10">
<DoubleAnimationUsingKeyFrames Storyboard.TargetName="rotButton" Storyboard.TargetProperty="(RotateTransform.Angle)">
<SplineDoubleKeyFrame KeyTime="0:0:00.0" Value="0.0" />
<SplineDoubleKeyFrame KeyTime="0:0:01.0" Value="360.0" />
</DoubleAnimationUsingKeyFrames>
</Storyboard>
</Window.Resources>
并且 rotButton 在这里的第一个按钮中定义:
<Button Click="Button_Click">
<StackPanel>
<Image Source="open.png" Height="46" Width="48" />
</StackPanel>
<Button.RenderTransform>
<TransformGroup>
<RotateTransform x:Name="rotButton" Angle="0" CenterX="25" CenterY="25" />
<ScaleTransform x:Name="scaButton" ScaleX="1" ScaleY="1" CenterX="50" CenterY="25" />
</TransformGroup>
</Button.RenderTransform>
<Button.Triggers>
<EventTrigger RoutedEvent="Button.Click">
<BeginStoryboard Storyboard="{StaticResource Storyboard}" />
</EventTrigger>
</Button.Triggers>
</Button>
如何将此代码用于所有其他按钮并为每个按钮使用“通用”Button.RenderTransform?应该有更聪明的方法来创建 3 个故事板并为每个按钮使用 rotButton1、rotButton2 等。
我希望这是有道理的,并指出我正确的方向:)
谢谢