Windows Phone 8 NavigationService.Navigate 抛出 NullReferenceException

Windows Phone 8 NavigationService.Navigate throws a NullReferenceException

我正在为 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();
    }

当我启动应用程序时没有自动导航到暂停屏幕,然后按一个按钮进行导航,它工作正常。 我现在的问题是什么时候可以自动导航以及如何执行此操作?

提前,我已经谢谢你了。

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

 Loaded += navigate_pause();


 private RoutedEventHandler navigate_pause() 
 {
        Dispatcher.BeginInvoke(() =>
        {
            ((PhoneApplicationFrame)Application.Current.RootVisual).Navigate(new Uri("/Pause.xaml", UriKind.Relative));
        });
        return null;
 }