我正在使用WPF C#项目,我在显示工具提示以进行验证方面遇到了很多问题,我在StackOverflow的另一篇文章中遇到了这个解决方案。
<DataGridTextColumn MinWidth="80" ...>
<DataGridTextColumn.ElementStyle>
<Style TargetType="{x:Type TextBlock}">
<Style.Triggers>
<Trigger Property="Validation.HasError" Value="true">
<Setter Property="ToolTip"
Value="{Binding RelativeSource={RelativeSource Self},
Path=(Validation.Errors)[0].ErrorContent}"/>
</Trigger>
</Style.Triggers>
</Style>
</DataGridTextColumn.ElementStyle>
</DataGridTextColumn>
虽然这有效并且将工具提示样式应用于列,但我必须将其粘贴到所有列中
我希望它发生......我试图创造一种风格,但我没有成功。我认为它与绑定和“相对来源”的事情有关。
是否可以创建一个样式并将其应用于每一列,我该怎么做?!
答案 0 :(得分:0)
我刚想出如何让它发挥作用!
<DataGrid.Resources>
<Style x:Key="DataGridTextColumnError" TargetType="{x:Type TextBlock}">
<Style.Triggers>
<Trigger Property="Validation.HasError" Value="true">
<Setter Property="ToolTip" Value="{Binding RelativeSource={x:Static RelativeSource.Self}, Path=(Validation.Errors)[0].ErrorContent}" />
</Trigger>
</Style.Triggers>
</Style>
</DataGrid.Resources>
需要将值绑定更改为静态。 希望这有助于某人!