【发布时间】:2011-03-30 20:20:03
【问题描述】:
我想在按下返回键时添加一个输出动画,然后再实际返回。现在我只是在后退键的覆盖方法中播放动画。但它并没有完全播放动画。有没有办法取消返回事件并将其添加到动画完成事件中?或者实现这一目标的最佳方法是什么?
【问题讨论】:
标签: c# .net windows-phone-7 animation
我想在按下返回键时添加一个输出动画,然后再实际返回。现在我只是在后退键的覆盖方法中播放动画。但它并没有完全播放动画。有没有办法取消返回事件并将其添加到动画完成事件中?或者实现这一目标的最佳方法是什么?
【问题讨论】:
标签: c# .net windows-phone-7 animation
试试这个:
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();
}
}
【讨论】:
NavigationService.CanGoBack() 返回false 作为最后一页(应用启动时的第一页)