0

我正在为 WindowsPhone 8 开发 C# 项目。当用户停用应用程序(即转到主菜单)时,我会停止一些计时器并保存一些东西。这工作正常。但是当用户重新激活应用程序时,我想将用户导航到暂停屏幕。

 NavigationService.Navigate(new Uri("/Pause.xaml", UriKind.Relative));

该代码很简单,并且在应用程序未停用时可以完美运行。但是当用户重新激活应用程序时,它会抛出 NullReferenceException。

我已经尝试了几件事,例如:

    public void pause_for_activated()
    {
        this.Loaded += navigate_pause();
    }

    private RoutedEventHandler navigate_pause()
    {
        NavigationService.Navigate(new Uri("/Pause.xaml", UriKind.Relative));
        return navigate_pause();
    }

当我启动应用程序而不自动导航到暂停屏幕然后按下按钮进行导航时,它可以工作。我现在的问题是我什么时候可以自动导航,我该怎么做?

提前,我已经谢谢你了。

4

1 回答 1

0

直到现在我才得到答案,但我找到了适合我的解决方案,所以我决定把它放在这里。

 Loaded += navigate_pause();


 private RoutedEventHandler navigate_pause() 
 {
        Dispatcher.BeginInvoke(() =>
        {
            ((PhoneApplicationFrame)Application.Current.RootVisual).Navigate(new Uri("/Pause.xaml", UriKind.Relative));
        });
        return null;
 }
于 2015-11-16T13:19:35.050 回答