0

是否可以创建后半部分重复但前半部分不重复的故事板?或者,我可以让一个故事板在另一个故事板完成后开始,全部在 xaml 中吗?

4

1 回答 1

2

我认为您不能仅在 XAML/Blend 中使用动画,无论如何您都需要在代码中开始它们。

StoryBoard1.Begin();

但是在第一个动画结束时开始另一个动画的代码非常简单:

首先,您在代码中订阅 Completed 事件:

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 += 然后按两次选项卡,它将生成所需的方法。

于 2009-03-20T07:14:43.397 回答