我希望在按下后退键之前添加一个out动画,然后再实际返回。现在我只是在后面键的覆盖方法中播放动画。但它并没有完全播放动画。有没有办法取消后退事件并将其添加到动画完成事件?或者实现这一目标的最佳方法是什么?
答案 0 :(得分:7)
试试这个:
protected override void OnBackKeyPress( System.ComponentModel.CancelEventArgs e )
{
if( NavigationService.CanGoBack() ) {
// Cancel the navigation
e.Cancel = true;
//Create the storyboard
Storyboard anim = new MyCoolAnimation();
// Hook an on complete handler
EventHandler handler = null;
handler = ( s, e ) => {
// Navigate backward
NavigationService.GoBack();
anim.Completed -= handler;
};
anim.Completed += handler;
// Start the storyboard
anim.Begin();
}
}