【发布时间】:2011-09-30 13:04:07
【问题描述】:
我一直在使用 Josh Smith's article 学习 MVVM 模式,我想创建一个带有右侧链接的经典布局(通过命令管理),因此当我单击一个时,我可以在选项卡的右侧显示我的视图控件(里面有一个 ContentControl)。
当我将 DataTemplate 与我想在屏幕上显示的特定 View 和 ViewModel 一起使用时,这很简单。
<!-- this section into my MainWindow's resources file -->
<DataTemplate xmlns:vm='clr-namespace:WpfFramework.ViewModels'
xmlns:vw='clr-namespace:WpfFramework.Views'
DataType="{x:Type vm:MySpecificViewModel }" >
<vw:MySpecificView />
</DataTemplate>
但是,我想要更通用的东西。我的意思是我的 mainWindow 不应该知道特定的 View 或特定的 ViewModel。它应该只知道它绑定到某些命令并具有显示“某些视图”的选项卡控件。包括Josh Smith's article 在内的每个样本似乎都具有有限的视图和视图模型,这对样本来说很棒。
那么,我怎样才能告诉我的 ContentControl 某些视图(及其对应的 viewModel)会在那里而不是那么具体(没有“刻录”到 mainView 中的具体类型)?
最好的问候 罗德里戈
PD。我尝试过使用基本 ViewModel 和基本视图,但它似乎不起作用。
【问题讨论】: