我有 4 个视图模型(BaseViewModel、MainViewModel 和两个为不同的视图显示:ViewModelMainPage、ViewModelWorkPage)和 1 个视图。我想在单个窗口上应用不同的视图。到目前为止,我已经在 window.resources 中创建了 2 个数据模板(每个模板都有自己的视图模型)。我在网格列 0 上有两个按钮可以在它们之间切换,在网格列 1 中将显示选定的数据模板。从这里开始,我不知道该怎么办。我真的很感激任何帮助。
谢谢。
您可以扩展您DataTemplate
在父视图中声明的子视图的概念。
可以在此处找到与您所做的非常相似的工作示例(尝试下载示例中的项目“TwoViews”)。下载源代码并通读文章。
您也可以通读This SO Question's Answer以了解当模型发挥作用时它是如何扩展的。
这个 Codeplex 示例也非常适合 MVVM 的初学者。
你需要的是一个数据模板选择器。查看 MSDN 链接以获取有关如何使用选择器的示例。
http://msdn.microsoft.com/en-us/library/system.windows.controls.datatemplateselector.aspx