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