Windows phone 7 如何在Windows Mobile中导航到另一个xaml页面

Windows phone 7 如何在Windows Mobile中导航到另一个xaml页面,windows-phone-7,Windows Phone 7,当单击当前xaml页面中的listbox项时,我试图转到另一个xaml页面。我是这样做的 private void mainList_SelectionChanged(object sender, SelectionChangedEventArgs e) { if (mainList.SelectedIndex == -1) return; NavigationService.Navigate(new Uri("/Registe

当单击当前xaml页面中的listbox项时,我试图转到另一个xaml页面。我是这样做的

 private void mainList_SelectionChanged(object sender, SelectionChangedEventArgs e)
    {
        if (mainList.SelectedIndex == -1)
            return;

        NavigationService.Navigate(new Uri("/RegisterSurveyee.xaml",UriKind.Relative));
    }
但它给了我NULLREFERENCEEXCEPTION错误。groupID groupName不为空。当我将最后一句改为.Content=newregistersurveye时,它工作正常。该问题仅出现在NavigationService.NavigateNewURI/RegisterSurveyee.xaml、UriKind.Relative; 有什么帮助吗?

我确保e.AddedItems[0]不为null,并且是SurveyGroup类型

如果您遇到空引用异常

 if (mainList ==null || mainList.SelectedIndex == -1)
            return;
ii当从一个页面导航到另一个页面时,必须提供全名,包括.xaml扩展名

 NavigationService.Navigate(new Uri("/RegisterSurveyee.xaml",UriKind.Relative));
如果仍然出现NullReference异常,请尝试注册到页面已加载事件上的SelectionChanged事件

    private void MainPage_OnLoaded(object sender, RoutedEventArgs e)
    {
        ListBox.SelectionChanged += ListBoxSelectionChanged;
    }

您需要调试代码以查看null引用引发异常的位置。在方法中放置一个断点并逐步完成它。可能是添加的项的类型不是SurveyWindowPhone.Tables.SurveyGroup,因此转换失败。我的直觉是,它是您设置组Id的地方。可能重复的确保您键入的类型转换为正确的类SurveyGroup检查mainList是否是您的列表框的名称。请参阅编辑两个名称相同。每一个例子和教程都和我的一样,但我仍然得到这个错误。现在,我使用的是content=newregistersurveyee;是否包含空检查?我尝试导航到不同的xaml页面,但结果相同。我没有检查空值。NavigationService.NavigateNewURI/RegisterSurveyee.xaml、UriKind.Relative中发生错误