如何在 Windows Phone 8 中为多个按钮设置动画

本文关键字:按钮 设置 动画 Windows Phone | 更新日期: 2023-09-27 18:33:08

>我正在开发一个Windows手机游戏应用程序,我需要对某些事件(例如Page_loaded)上的多个按钮进行动画处理。我能实现的是

<Storyboard Storyboard.TargetName="scaButton" Storyboard.TargetProperty="Angle" >
            <DoubleAnimation Storyboard.TargetProperty="ScaleY" 
                     From="-1" To="1"                                                           
                     BeginTime="0:0:0"
                     Duration="0:0:0.5"
                     AutoReverse="False" />
        </Storyboard>

在 XAML 中,只需一个按钮

<Button Height="100" Width="200" Margin="10,495,270,103" Content="{Binding Path=ListOfValues[0]}" RenderTransformOrigin="0.5,0.5" Click="Button_Click">
            <Button.RenderTransform>
               <ScaleTransform x:Name="scaButton" ScaleX="1" ScaleY="1" CenterX="50" CenterY="25" />
            </Button.RenderTransform>
        </Button>

但问题是我如何为多个按钮定义它。我希望所有按钮同时翻转动画。但是我该如何实现呢?

请帮忙。在Windows中,电话<Style.Triggers>也不存在。

如何在 Windows Phone 8 中为多个按钮设置动画

您可以通过在

DoubleAnimation 中设置 TargetName 来实现此目的

<Grid.Resources>
    <Storyboard x:Name="FlipButtonStory">
        <DoubleAnimation Storyboard.TargetName="scaButton1"
                 Storyboard.TargetProperty="ScaleY" 
                 From="-1" To="1"                                                           
                 BeginTime="0:0:0"
                 Duration="0:0:0.5"
                 AutoReverse="False" />
        <DoubleAnimation Storyboard.TargetName="scaButton2"
                 Storyboard.TargetProperty="ScaleY" 
                 From="-1" To="1"                                                           
                 BeginTime="0:0:0"
                 Duration="0:0:0.5"
                 AutoReverse="False" />
        <DoubleAnimation Storyboard.TargetName="scaButton3"
                 Storyboard.TargetProperty="ScaleY" 
                 From="-1" To="1"                                                           
                 BeginTime="0:0:0"
                 Duration="0:0:0.5"
                 AutoReverse="False" />
    </Storyboard>
<Grid.Resouces>

可以通过调用 BeginStoryboard 方法开始故事。

FlipButtonStory.BeginStoryboard();