这是我的XAML代码,按钮位于Stackpanel中。
这个doestn与旋转工作!但是例如使用Storyboard.TargetProperty="Opacity"
它可以工作。
<Button Content="Button" x:Name="RotateBtn" Style="{StaticResource rainbow}" >
<Button.Triggers>
<EventTrigger RoutedEvent="Button.Click">
<BeginStoryboard>
<Storyboard>
<DoubleAnimation
Storyboard.TargetProperty="(Button.RenderTransform).(RotateTransform.Angle)"
From="1" To="36" Duration="0:0:3" />
</Storyboard>
</BeginStoryboard>
</EventTrigger>
</Button.Triggers>
</Button>
其他问题:如何使用C#获得相同的动画?
答案 0 :(得分:1)
默认UIElement.RenderTransform
为Transform.Identity
,因此您的动画无法找到RotateTransform
。您需要在按钮上设置RenderTranform
至RotateTransform
。
<Button>
<Button.RenderTransform>
<RotateTransform/>
</Button.RenderTransform>
...
</Button>
快速搜索将为您提供如何在代码中创建故事板的示例。您只需在按钮上创建EventTrigger
并将故事板添加到其中。