在我的程序中,我有一个包含contentPresenter
. mainWindow 有一个名为MainWindowViewModel
. 此 viewModel 包含绑定到主窗口中的项目的属性。
Content
我的contentPresenter
由 UserControl->ViewModel->Model 结构表示。
这是contentPresenter
我正在使用的 xaml。
MainWindow.xaml:
<ContentPresenter Content="{Binding LeftWidget}" IsEnabled="{Binding LeftWidgetEnabled}" ... />
LeftWidget
并且LeftWidgetEnabled
都是位于 中的属性MainWindowViewModel
。但是,BindingExpression path error
我收到的与LeftWidgetEnabled
. 出于某种原因,我的程序正在寻找contentPresenter
UserControl 的 ViewModel 中的属性。这对我来说没有多大意义,因为该程序LeftWidget
正确处理了该属性。
这两个属性都位于MainWindowViewModel
,那么为什么程序会在其他地方寻找该LeftWidgetEnabled
属性?我怎样才能解决这个问题?
另请注意:我设置DataContext
UserControls 的方式是这样的......
在<Window.Resources...
mainWindow.xaml 中:
<DataTemplate DataType="{x:Type project:LeftWidgetViewModel}">
<local:LeftWidgetUserControl/>
</DataTemplate>