在我的程序中,我有一个包含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. 出于某种原因,我的程序正在寻找contentPresenterUserControl 的 ViewModel 中的属性。这对我来说没有多大意义,因为该程序LeftWidget正确处理了该属性。
这两个属性都位于MainWindowViewModel,那么为什么程序会在其他地方寻找该LeftWidgetEnabled属性?我怎样才能解决这个问题?
另请注意:我设置DataContextUserControls 的方式是这样的......
在<Window.Resources...mainWindow.xaml 中:
<DataTemplate DataType="{x:Type project:LeftWidgetViewModel}">
<local:LeftWidgetUserControl/>
</DataTemplate>