WPF动画结束时是否会触发任何事件?

WPF动画结束时是否会触发任何事件?

void HideDefaultScreenImageTimer_Tick(object sender, EventArgs e) { HideDefaultScreenImageTimer.Stop(); var doubleAnimation = new DoubleAnimation(1, 0, new Duration(TimeSpan.FromSeconds(0.45))); DefaultScreenImage.BeginAnimation(UIElement.OpacityProperty, doubleAnimation); // I need some event when an animation ENDS and within that event I want to remove // Image (DefaultScreenImage) from Canvas. MainCanvas.Children.Remove(DefaultScreenImage); } 

就在这里。

完成的事件(MSDN)


所以你的代码变成:

 void HideDefaultScreenImageTimer_Tick(object sender, EventArgs e) { HideDefaultScreenImageTimer.Stop(); var doubleAnimation = new DoubleAnimation(1, 0, new Duration(TimeSpan.FromSeconds(0.45))); doubleAnimation.Completed += (sender, eArgs) => MainCanvas.Children.Remove(DefaultScreenImage); DefaultScreenImage.BeginAnimation(UIElement.OpacityProperty, doubleAnimation); }