WPF:如何在动画运行时在特定时间点调用方法

时间:2013-07-09 09:34:35

标签: wpf animation

我的问题如下:

我有一个动画让面板滑动直到它消失(我为其边缘属性设置动画)。一旦动画结束,我希望面板返回到开始时的位置。所以我将autoreverse属性设置为true,动画持续时间自动加倍,并且everithing运行正常。问题是我在程序中仍然缺少一些基本的东西:当动画中途运行时,即面板消失时,我必须进行一些处理,调用方法,这会使面板内容改变其UI。 那么,有没有办法做到这一点?

由于

1 个答案:

答案 0 :(得分:0)

正如@deafjeff建议的那样,你可以制作2个动画,而不是使用自动反转。为第一个动画注册Completed事件的处理程序。 UI更改并在hanlder代码中启动第二个动画。代码就像是关注:

private void onFirstAnimationCompleted(object sender, EventArgs e)
{
  DoUIChange();
  SecondAnimation.Start();
}