在out project中,我们使用MVVM和WPF。 要绑定View和View Model,我们使用另一个类并将其称为presenter。此演示者类绑定视图和视图模型,因此我们可以将视图绑定到不同的视图模型。我将视图的数据上下文设置为此类中的viewmodel。
class presenter
{
// in constructor or any method
ViewModel = new ViewModelCls();
View = new ViewXAMLName();
View.DataContext = ViewModel;
}
现在,问题是,我在一个窗口中使用ContentControl,比如abc.xaml并将其内容设置为presenter.View。
<ContentControl Content="{Binding SelectedOption.Presenter.View}"></ContentControl>
当我运行我的项目时,所有绑定都可以正常工作,并且Presenter.View将填充Presenter.ViewModel。但是在输出窗口中,我可以看到Presenter.ViewModel中存在的属性的许多绑定错误。
我尝试调试并发现对于SelectedOption.Presenter.View,它将DataContext设置为abc.xaml的ViewModel并尝试在该View模型中查找属性。但显然,它无法找到它并在输出窗口中写入所有这些绑定错误。稍后,它将VM设置为&#34; Presenter.ViewModel&#34;一切正常。
有没有办法从输出窗口中删除那些绑定错误? 在此先感谢!!
答案 0 :(得分:0)
可以通过将绑定源级别设置为“严重”来抑制数据绑定错误。
System.Diagnostics.PresentationTraceSources.DataBindingSource.Switch.Level = System.Diagnostics.SourceLevels.Critical;