如何在 XAML 和 C# 中对 WPF 按钮的旋转进行动画处理

本文关键字:旋转 处理 动画 按钮 WPF XAML 中对 | 更新日期: 2023-09-27 17:56:08

这是我的XAML代码,按钮位于堆栈面板中。这个工作与轮换!但例如,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# 获得相同的动画?

如何在 XAML 和 C# 中对 WPF 按钮的旋转进行动画处理

默认UIElement.RenderTransformTransform.Identity,因此动画会失败,因为它找不到RotateTransform。您需要在按钮上设置RenderTranformRotateTransform

    <Button>
        <Button.RenderTransform>
            <RotateTransform/>
        </Button.RenderTransform>
  ...
      </Button>

快速搜索将为您提供有关如何在代码中创建情节提要的示例。您只需在按钮上创建EventTrigger并向其中添加情节提要。