【问题标题】:DataGrid Rows' Foreground color for selected item所选项目的 DataGrid 行的前景色
【发布时间】:2012-07-10 05:53:14
【问题描述】:

我为我的 DataGrid 定义了一个 RowStyle,以将我的网格中具有拒绝状态或 Reject_X 或 Reject_Y 的项目的前景色更改为红色:

            <Style TargetType="DataGridRow">
                <Style.Triggers>
                    <DataTrigger Binding="{Binding Status}" Value="{x:Static StatusTypes:Status.Reject_X}">
                        <Setter Property="Foreground" Value="Red"/>
                    </DataTrigger>
                    <DataTrigger Binding="{Binding Status}" Value="{x:Static StatusTypes:Status.Reject_Y}">
                        <Setter Property="Foreground" Value="Red"/>
                    </DataTrigger>
                </Style.Triggers>
            </Style>

这种样式效果很好,只是所选项目的前景色是黑色而不是红色。所以,我需要知道如何设置所选项目的样式,以便前景颜色也是红色。即

如果项目被选中并且状态等于 Reject_X 或 Reject_Y 则将前景设置为红色。

【问题讨论】:

  • 您是否尝试过在 DataGrid.Resources 中重置 SystemColors.HighlightTextBrushKey?

标签: wpf wpfdatagrid


【解决方案1】:

我认为应该这样做。我也会在您的 DataGridRow 样式上放置类似的 MultiTriggers...

 <Style TargetType="DataGridCell">
    <Style.Triggers>
        <MultiTrigger>
            <MultiTrigger.Conditions>
                <Condition Property="IsSelected" Value="True"/>
                <Condition Binding="{Binding Status}" Value="{x:Static StatusTypes:Status.Reject_X}"/>
            </MultiTrigger.Conditions>
            <Setter Property="Foreground" Value="Red"/>
        </MultiTrigger>
        <MultiTrigger>
            <MultiTrigger.Conditions>
                <Condition Property="IsSelected" Value="True"/>
                <Condition Binding="{Binding Status}" Value="{x:Static StatusTypes:Status.Reject_Y}"/>
            </MultiTrigger.Conditions>
            <Setter Property="Foreground" Value="Red"/>
        </MultiTrigger>
    </Style.Triggers>
</Style>

【讨论】:

  • 该项目也必须被选中 - 而不仅仅是被拒绝。
【解决方案2】:

我会查找多数据触发器。那应该给你你想要的。

【讨论】:

    猜你喜欢
    • 2013-01-30
    • 2016-12-24
    • 2018-09-01
    • 1970-01-01
    • 1970-01-01
    • 2015-07-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多