Windows phone 8 导航服务中的对象引用错误。导航
在我的Windows phone 8 导航服务中的对象引用错误。导航,windows-phone-8,Windows Phone 8,在我的MainPage构造函数中,我使用NavigationService导航到另一个页面,但我得到了错误: 对象引用未设置为对象的实例 有人知道我为什么不能从构造函数中导航吗 public MainPage() { InitializeComponent(); NavigationService.Navigate(new Uri("/test.xaml", UriKind.Relative)); } 您导航到的页面尚未在目录中创建
MainPage
构造函数中,我使用NavigationService
导航到另一个页面,但我得到了错误:
对象引用未设置为对象的实例
有人知道我为什么不能从构造函数中导航吗
public MainPage()
{
InitializeComponent();
NavigationService.Navigate(new Uri("/test.xaml", UriKind.Relative));
}
您导航到的页面尚未在目录中创建。“Loaded”在对象全部创建后触发,是执行导航到另一个页面等操作的正确位置。派对有点晚,但是(正如上面@justinangle的评论所提到的),您应该实际使用
OnNavigatedTo
事件,而不是Loaded
。当加载的仍能工作时
通常,使用OnNavigatedTo方法而不是创建
已加载事件的事件处理程序。OnNavigatedTo方法更可取,因为每次页面激活时只调用一次。Silverlight框架在每次将元素添加到可视化树时都会引发加载的事件,这在激活页面时可能会发生多次
当我在PhoneApplicationPage_中使用NavigationService时,问题就解决了。我不确定这是否是解决方案,但它对我有效。确切地说,在c'tor Navigaiton期间,服务为空,因为页面尚未导航到。使用“Loaded”事件处理程序或“OnNavigatedTo”方法重写是这里的方法。但是为什么要导航到一个可以立即导航离开的页面呢?谢谢你的解释。导航到第二个页面取决于一些条件。所以它会停留在主页上或导航到另一个