我有一个DataGrid,我在多列上设置ElementStyle。如果它是负数,我希望样式将列中文本的前景变为红色。当我在每列上设置并指定值时,我的转换器工作,在下面的示例中,“不平衡”具有发送到转换器的数值,如果它为负,则将其更改为红色。当然,我使用此样式的每一列都有不同的Binding属性(Imbalance,Supply,Scheduled)。
如何在我的资源中使用样式来完成此操作而不是在每列上指定具有属性名称的转换器?
ElementStyle="{StaticResource NomVolumeStyle}"
<Style x:Key="NomVolumeStyle" TargetType="{x:Type TextBlock}">
<Setter Property="TextAlignment" Value="Right" />
<Setter Property="Foreground" Value="{Binding Imbalance, Converter={StaticResource NegativeNumberColorConverter}}" />
</Style>