关于更改框架的ArgumentNullException

时间:2012-12-09 18:28:32

标签: c# windows-8 argumentnullexception page-state

2 个答案:

答案 0 :(得分:11)

好吧,所以我找到了自己问题的答案!

在我引用的两个页面上,我必须至少实现了2种方法的最小实现:

protected override void OnNavigatedTo(NavigationEventArgs e) {
    base.OnNavigatedTo(e);
}

protected override void OnNavigatedFrom(NavigationEventArgs e) {
    base.OnNavigatedFrom(e);
}

base.OnNavigatedFrom(e);
base.OnNavigatedTo(e);

在方法中非常重要。

答案 1 :(得分:0)

可能触发此问题的另一种情况是,如果页面不再附加到任何帧(例如,由于事件处理程序或其他引用它仍然在内存中,但其框架已经从页面导航离开)。

如果您在可能被多次触发或多次附加到事件的事件处理程序中调用Frame.Navigate(),则很容易意外地执行此操作(第一次调用将起作用,但第二次调用将在之后调用页面不再有任何框架。)