【发布时间】:2010-05-30 21:05:54
【问题描述】:
有没有一种简单的方法来播放一些StoryBoad 向后(反转)?由于有一种方法Storyboard.Begin() 我希望有一些方法,如“Storyboard.BeginReversed()”,但我找不到它。
如果没有办法向后播放动画,我必须为我的大多数动画编写互补动画。这对我来说很难闻(某种代码重复)。
基本上我只是为显示和隐藏的网格设置动画。
【问题讨论】:
有没有一种简单的方法来播放一些StoryBoad 向后(反转)?由于有一种方法Storyboard.Begin() 我希望有一些方法,如“Storyboard.BeginReversed()”,但我找不到它。
如果没有办法向后播放动画,我必须为我的大多数动画编写互补动画。这对我来说很难闻(某种代码重复)。
基本上我只是为显示和隐藏的网格设置动画。
【问题讨论】:
你能把“From”和“To”翻过来再玩一遍吗?
【讨论】:
Storyboard的创作者们没有想过这个吗??
我认为这会对您有所帮助(另请参阅下面的 xaml 示例)
var storyboard = this.Resources["Storyboard1"] as Storyboard;
var anim = storyboard.Children[0] as DoubleAnimationUsingKeyFrames;
anim.AutoReverse = true;
anim.RepeatBehavior = RepeatBehavior.Forever;
<Storyboard x:Key="Storyboard1">
<DoubleAnimationUsingKeyFrames BeginTime="00:00:00" Storyboard.TargetName="border" Storyboard.TargetProperty="(FrameworkElement.Width)">
<SplineDoubleKeyFrame KeyTime="00:00:00" Value="200"/>
<SplineDoubleKeyFrame KeyTime="00:00:00.5000000" Value="300"/>
</DoubleAnimationUsingKeyFrames>
</Storyboard>
【讨论】: