2

在我的MainPage构造函数中,我NavigationService用来导航到另一个页面,但出现错误:

你调用的对象是空的

有谁知道为什么我无法从我的构造函数导航?

public MainPage()
    {           
      InitializeComponent();
      NavigationService.Navigate(new Uri("/test.xaml", UriKind.Relative));
    }
4

2 回答 2

2

您要导航到的页面尚未在 c'tor 中创建。“加载”在对象全部创建后触发,并且是执行导航到另一个页面等操作的正确位置。

于 2013-01-23T16:51:41.800 回答
0

派对有点晚了,但根据 MSDN 所说的(以及上面@JustinAngel 的评论中提到的),您应该实际使用该OnNavigatedTo事件,而不是Loaded. 虽然Loaded还在工作,

通常,您使用 OnNavigatedTo 方法而不是为 Loaded 事件创建事件处理程序。OnNavigatedTo 方法更可取,因为每次页面变为活动状态时它只调用一次。每次将元素添加到可视化树时,Silverlight 框架都会引发 Loaded 事件,这在激活页面时可能会发生不止一次。

于 2013-05-13T15:47:46.193 回答