我DataGrid
有DataGridTextColumn
一个 ValidationRule
<DataGridTextColumn Header="xxx" IsReadOnly="False">
<DataGridTextColumn.Binding>
<Binding Path="xxx" >
<Binding.ValidationRules>
<v:xxxValidator />
</Binding.ValidationRules>
</Binding>
</DataGridTextColumn.Binding>
然后我有b:BindValidationResult.HasError="{Binding HasError}"
我的DataGrid
.
在BindValidationResult
我Validation.HasErrorProperty
用来监听validationError 的时候发生了变化。
我的验证规则返回return new ValidationResult(false, "");
我的感觉是我没有在正确的属性上听 aDataGridTextColumn
因为如果我对 a 做同样的事情,TextBox
它就像一个魅力。
此外,DataGridCell
出现错误时会出现一些红色边框,所以我知道发生了一些事情。
我什至试过这个,看看是否Validation.HasError
会改变,但它不会触发。
<Style.Triggers>
<Trigger Property="Validation.HasError" Value="true">
<Setter
Property="ToolTip"
Value="{Binding RelativeSource={RelativeSource Self},
Path=(Validation.Errors)[0].ErrorContent}"/>
</Trigger>
</Style.Triggers>
关于如何解决此问题或如何解决问题的任何帮助将不胜感激。
谢谢