2011-03-30 85 views
1

在返回键被按下之前,我想添加一个动画。现在我只需要在后退键的覆盖方法中播放动画。它并不完全播放动画。有没有办法取消后退事件并将其添加到动画完成事件?或者什么是实现这一目标的最佳方式?按下后退键时的动画

回答

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(); 
    } 
} 
+0

将这个还努力关闭应用程序的最后一页,因此关闭它? – 2011-03-31 08:31:38

+0

@Matt Lacey:我不这么认为;我认为'NavigationService.CanGoBack()'返回'false'为最后一页(当应用程序启动时的第一页) – Praetorian 2011-03-31 12:15:28

相关问题