在DataTrigger中使用绑定

时间:2016-01-13 22:29:12

标签: c# wpf datagrid

我是WPF的新手,并试图找出如何根据列的值更改数据网格行的背景颜色。我看过一些使用数据触发器的人的例子:

<DataGrid.RowStyle>
                <Style TargetType="DataGridRow">
                    <Style.Triggers>
                        <DataTrigger Binding="{Binding result}" Value="1">
                            <Setter Property="Background" Value="Red"></Setter>
                        </DataTrigger>
                        <DataTrigger Binding="{Binding result}" Value="0">
                            <Setter Property="Background" Value="Green"></Setter>
                        </DataTrigger>
                    </Style.Triggers>
                </Style>
</DataGrid.RowStyle>

我无法弄清楚它的代码方面是如何工作的 我将DataTable绑定到DataGrid,如下所示:

episodeDataGrid.DataContext = episodeTable.DefaultView;

我可以根据其中一列的文本触发DataTrigger吗?例如两行:

金额|结果

4000 | 0

5000 | 1

结果值为0的4000行为绿色,结果值为1的5000行为红色?

1 个答案:

答案 0 :(得分:1)

DataTable.DefaultView实际上与您的数据表不同。

或者,将数据上下文设置为表本身:

episodeDataGrid.DataContext = episodeTable;

或者,调整你的装订:

<DataTrigger Binding="{Binding Row.result}" Value="1">