silverlight - 如何使用 MVVM 在 Silverlight 4.0 中执行导航?

标签 silverlight mvvm silverlight-4.0 navigation

我是 Silverlight 的新手,我无法理解如何在页面之间正确导航,尤其是当我需要传递数据时。

经典示例:我在一个页面上有一个人员列表,当我单击数据网格中的某个人时,我想转到详细信息页面并加载该数据。我需要传递 PersonId。更重要的是,我需要知道如何从 ViewModel 执行此操作。

很容易从 ViewModel 上的数据网格触发命令,而且 Viewmodel 上的 SelectedItem 也被绑定(bind)并因此被跟踪,但是然后呢?我如何进入下一页?我这辈子都弄不明白。这看起来应该很容易,但到目前为止,它一点也不容易。

最佳答案

最基本的做法是更改 Application.Current.RootVisual 的设置并设置适当的 DataContext。然而,最好有一些包装器可以为您正确设置它。例如,在您导航到的自定义 View 中,您可以让 View 的构造函数以更好的方式为您处理一些逻辑。如果您使用的是 Prism,那么您最终谈论的是修改 shell 或 shell 中的容器。

关于silverlight - 如何使用 MVVM 在 Silverlight 4.0 中执行导航?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4046033/

相关文章:

c# - 在powerpoint中使用OpenXML创建表

silverlight - RestSharp 诉 WebClient?

c# - 保存 RichTextBox 的文本

xml - SL4 : Root element is missing

silverlight - 动态生成 XAML 对象

.net - 如何将TCPClient和NetworkStream移植到Silverlight?

c# - 如何同时启用 , 和 .然后将其格式化为 .适用于所有文化中的 DataGridColumn?

c# - Xamarin.Mac MVVM 模式的最佳实践

silverlight - 如何隔离 Silverlight 内存泄漏

.net - 如何在 Silverlight 4 中使用 TextBox.Watermark?