WP7导航 - NullReferenceException

Jim*_*ins 3 windows-phone-7

我需要在第一次运行我的应用程序时导航到某个页面,以收集登录详细信息等.我正在使用IsloatedStorageSettings来保存值以确定这是否是应用程序的第一次运行,这可以正常工作.

我的问题实际上是在第一次运行应用程序时导航到我的"第一次运行"页面,使用NavigationService,此时似乎没有创建NavigationService,所以仍然为null.什么时候创建NavigationService或者我该如何解决这个问题?

我的代码(在我的主页的构造函数中:

if ((bool)settings["firstRun"])
 { 
    if (NavigationService != null)
    {
        NavigationService.Navigate(new Uri("/FirstRun.xaml", UriKind.Relative));
    }
    else
    {
        MessageBox.Show("Navigation service must be null?");   //always prompts
    }                
 }
else
{
   InitializeComponent();
} 
Run Code Online (Sandbox Code Playgroud)

Der*_*kin 6

Peter Torr有一篇很棒的博客文章,介绍了重定向初始导航的细节,但对于用户登录,我建议您使用全屏弹出窗口或在"普通"起始页面上设置登录控件并切换可见性根据您的第一次运行条件.