如何根据多条件WPF更改datagridcell的背景?

时间:2015-02-04 02:12:00

标签: c# wpf datagrid

我有一些条件行的数据网格。我希望如果我在datagrid中选择特定行,所选颜色将根据我的记录值更改。 假设我有Students的{​​{1}}标记记录。

然后,如果我单击所选的学生记录,则所选行将根据IsDropOut值更改颜色。如果是IsDropOut,则会将所选行背景设置为红色,如果trueIsDropOut,则会将所选行背景更改为绿色。

也许就像这样

false

但那段代码不起作用。那怎么办呢?有人有建议吗?

2 个答案:

答案 0 :(得分:1)

最后我解决了这个问题..感谢您的想法..

<MultiDataTrigger>
    <MultiDataTrigger.Conditions>
        <Condition Binding="{Binding Path=IsDropOut}" Value="True" />
        <Condition Binding="{Binding Path=IsSelected, RelativeSource={RelativeSource Self}}" Value="True" />
    </MultiDataTrigger.Conditions>
    <Setter Property="Background" Value="Red" />
    <Setter Property="Foreground" Value="White" />
</MultiDataTrigger>

答案 1 :(得分:0)

试试这个:

          <Style TargetType="DataGridCell">
                <Style.Triggers>
                    <MultiTrigger>
                        <MultiTrigger.Conditions>
                            <Condition Property="IsSelected" Value="True" />
                            <Condition Property="IsDropOut" Value="true" />
                        </MultiTrigger.Conditions>
                        <Setter Property="Background" Value="Red" />
                    </MultiTrigger>
                </Style.Triggers>
            </Style>