如何在XAML页面之间传递值(参数)?

如何在XAML页面之间传递值(参数)?

之前已经提出了类似的问题,但这个问题努力探索更多选项和传递复杂对象的能力。

问题是如何传递参数,但它确实需要分解为三个部分。

  1. 在XAML应用程序中的页面之间导航时,如何传递参数?

  2. 使用Uri导航和手动导航有什么区别?

  3. 使用Uri导航时如何传递对象(不仅仅是字符串)?

Uri导航示例

page.NavigationService.Navigate(new Uri("/Views/Page.xaml", UriKind.Relative));

手动导航示例

page.NavigationService.Navigate(new Page());

这个问题的答案适用于WP7,Silverlight,WPF和Windows 8。

注意:Silverlight和Windows8之间存在差异

  • Windows Phone:使用Uri导航页面,并将数据作为查询字符串或实例传递

  • Windows 8:通过传递类型和参数作为对象来导航页面


天涯尽头无女友
浏览 785回答 2
2回答

梵蒂冈之花

另外NavigationContext.QueryString.TryGetValue("parameter", out parameter)需要注意的是,需要从以下方法中调用:protected override void OnNavigatedTo(NavigationEventArgs e)
打开App,查看更多内容
随时随地看视频慕课网APP