Silverlight:重复故事板的一部分

时间:2009-03-19 15:59:05

标签: .net silverlight storyboard

是否有可能创建一个故事板,其中后半部分重复,但上半部分没有?或者,我可以让一个故事板在另一个完成之后开始,所有都在xaml中吗?

1 个答案:

答案 0 :(得分:2)

我不认为你可以在XAML / Blend中使用动画,你需要在代码中开始它们。

StoryBoard1.Begin();

但是,启动另一个动画的代码就像第一个动画完成一样非常简单:

首先,您在代码中订阅已完成的事件:

this.Storyboard1.Completed += new EventHandler(Storyboard1_Completed);
this.Storyboard2.Completed += new EventHandler(Storyboard2_Completed);
this.Storyboard1.Begin();

然后在受人尊敬的事件处理程序中,如果Storyboard1完成,则启动storyboard2,反之亦然。

private void Storyboard2_Completed(object sender, EventArgs e){
        this.Storyboard1.Begin();
}

private void Storyboard1_Completed(object sender, EventArgs e)
{
    this.Storyboard2.Begin();
}

要添加事件处理程序,您只需键入Storyboard.Completed + =然后按Tab键两次,它将生成所需的方法。