我最近开始了WP 8开发。我知道C#有点但不多。顺便说一句,我正在尝试以务实的方式打开一个页面,但应用程序正在破碎。
我的代码在这里
NavigationService.Navigate(new Uri("/Dashboard.xaml", UriKind.Relative));
但我感到困惑,因为当我将代码置于按钮点击事件代码块中时,它正在工作。
错误细节“System.NullReferenceException”类型的异常 发生在TestProgram.DLL中但未在用户代码中处理
如果存在此异常的处理程序,则程序可能是安全的 继续进行。
我需要你的建议。
编辑:已添加代码
Credens MyCred = new Credens();
// Constructor
public MainPage()
{
InitializeComponent();
if (MyCred.ifExists("api_key"))
{
NavigationService.Navigate(new Uri("/Dashboard.xaml", UriKind.Relative));
}
}
答案 0 :(得分:6)
您无法在构造函数中使用NavigationService
。将您的代码放入OnNavigatedTo
事件,它不会崩溃
protected override void OnNavigatedTo(NavigationEventArgs e)
{
if (MyCred.ifExists("api_key"))
{
NavigationService.Navigate(new Uri("/Dashboard.xaml", UriKind.Relative));
}
}
答案 1 :(得分:1)
您是否一步一步地关注this tutorial?
您的代码似乎正确。正如你所说,你应该有这样的事情:
private void hyperlinkButton1_Click(object sender, RoutedEventArgs e)
{
NavigationService.Navigate(new Uri("/Dashboard.xaml", UriKind.Relative));
}
您的网页是否在同一个文件夹中?你检查了路径吗?你的网页存在吗?你能开机吗?如果你在NavigationService上添加一个断点,那么它失败了吗?
我认为此文档非常有用。
答案 2 :(得分:0)
尝试在Navigate()
PhoneApplicationPage
或Loaded
事件上致电OnNavigatedTo()
。