我有一个WPF DataGrid,其中显示实现IDataErrorInfo的类型。如预期的那样,当验证失败时,该行将获得红色的感叹号,而无效的单元格将获得红色的突出显示。

一切都很好。但是,我希望验证错误消息显示在无效单元格的工具提示中,以便用户对错误之处有一些指示。我目前有:

<DataGrid.CellStyle>
    <Style TargetType="DataGridCell">
        <Setter Property="ToolTip"
                Value="{Binding RelativeSource={RelativeSource Self},
                                                Path=(Validation.Errors[0].ErrorContent}"/>
     </Style>
</DataGrid.CellStyle>

这种方法适用于TextBox,但不适用于DataGridCell。有什么区别?

最佳答案

我现在正在处理的项目中有类似的内容,它的内容如下:

<DataGridTextColumn.ElementStyle>
    <Style TargetType="{x:Type TextBlock}">
        <Setter Property="DataGridCell.ToolTip"
                Value="{Binding RelativeSource={RelativeSource Self},
                                                Path=(Validation.Errors)[0].ErrorContent}"/>
     </Style>
</DataGridTextColumn.ElementStyle>

10-06 14:17