Windows Phone 8 NavigationService.Navigate抛出NullReferenceException

时间:2015-11-16 09:34:39

标签: c# windows-phone-8 nullreferenceexception navigationservice

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

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

事先,我已经感谢你了。

1 个答案:

答案 0 :(得分:0)

直到现在我都没有回答,但我找到了一个解决方案,所以我决定把它放在这里。

 Loaded += navigate_pause();


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