【发布时间】:2011-10-23 23:35:39
【问题描述】:
在使用 Prism 数周后,我经历了各种导航方法。但仍有一件事是我无法使用 Prism“开箱即用”实现的:导航到视图模型实例。导航到视图模型或视图 type 非常容易,但实际上无法导航到真正的视图模型 instance。
例如,当我有一个不同视图模型实例(也不同类型)的列表时,如果选择了一个并且我想在我的内容区域中显示它,我无法实现它,除非我通过事件聚合发布更改并且我不希望这样,因为这让我陷入了我的内容区域中的一种观点。我要做的是将视图模型实例注册到区域中,以便视图可以从数据模板动态加载。
实际上,我通过创建一个 RegisterViewModelWithRegion 作为 RegionManager 的扩展方法来实现这一点,它工作得很好,但它不是很整洁,因为我必须手动查找我的应用程序资源,加载视图,附加我的视图模型实例然后将视图添加到我的区域。
我真的觉得我在架构中遗漏了一些东西,因为这种做法对我来说似乎很明显,但显然我找不到任何人有同样的担忧。
非常感谢您的帮助和经验。 谢谢。
【问题讨论】:
标签: wpf mvvm navigation viewmodel prism