当自定义 ValidationRule 与 Expander.Header 绑定关联时,我无法触发它。事实上,我似乎可以让这些自定义规则触发的唯一地方是在 DataGrid.RowValidationRules 块中......
扩展器是在我的 Window XAML 文件中定义的,如下所示;
<Expander Style="{StaticResource ValidatedSecondLevelExpanderStyle}">
<Expander.Header>
<Binding Path="Name" Mode="OneWay" ValidatesOnDataErrors="True" NotifyOnValidationError="True">
<Binding.ValidationRules>
<ValidationRules:BoundObjectIsValid />
</Binding.ValidationRules>
</Binding>
</Expander.Header>
</Expander>
绑定属性“名称”正确显示,但未调用验证规则“BoundObjectIsValid”。这是可能的,如果是这样,我错过了什么?
我知道我可以交替地在绑定对象上实现 IDataErrorInfo,但是如果没有系统其他部分提供的某些上下文,该对象无法明智地验证自己。重构是可能的,但我希望首先让 ValidationRules 工作!