我们如何动态创建和使用故事板来沿yaxis旋转网格

时间:2016-10-17 12:19:58

标签: animation rotation storyboard uwp

我正在开发一个UWP应用程序。

我试图通过在运行时创建一个故事板来动态旋转网格。但是,我在StoryBoard中找不到BeginAnimation()方法或TargetTyepe / TargetName属性,通过它我可以为我的网格设置动画。

您能为我建议一个可行的解决方法吗?如果可能,请分享代码。

提前致谢。

1 个答案:

答案 0 :(得分:1)

您可以使用以下代码创建故事板:

<强> XAML

<Grid x:Name="MyGrid">
    <Grid.RenderTransform>
        <RotateTransform/>
    </Grid.RenderTransform>
</Grid>

<强> CS

var sb = new Storyboard();

var anim = new DoubleAnimation();
Storyboard.SetTarget(anim, MyGrid);
Storyboard.SetTargetProperty(anim, "(UIElement.RenderTransform).(RotateTransform.Angle)");
anim.From = 0;
anim.To = 360;
anim.Duration = TimeSpan.FromSeconds(1);
sb.Children.Add(anim);

sb.Begin();

或者,您可以x:Name代替RenderTransform并直接将其设置为目标,而不是通过MyGrid间接定位。