我有一个绑定到CollectionView的ListBox,它再次绑定到viewmodel上的属性。
<ListBox ItemsSource="{Binding Source={StaticResource pumpCurvesViewSource}, ValidatesOnDataErrors=true}" />
现在,viewmodel实现了IDataErrorInfo,但是从不触发viewmodel上属性的验证。如果我跳过CollectionViewSource并直接绑定到viewmodel上的属性,一切都按预期工作(意味着当ListBox无效时,视图会在ListBox周围输出一个大的红色框):
<ListBox ItemsSource="{Binding Path=PumpCurves, ValidatesOnDataErrors=true}" />
现在,如何在使用CollectionViewSource时获得相同的行为?
答案 0 :(得分:0)
如果视图模型实现了IDataErrorInfo,则意味着它指定哪些属性具有验证错误。但是,ViewModel知道的属性是ViewModel的属性,而不是绑定到绑定到视图模型的属性的任何属性。尝试将CollectionView直接放在ViewModel上,然后绑定到ViewModel。