我继承了一个.NET 2.0 c#项目,该项目执行以下操作:
我已经找到了一些关于如何在DataGridView中实现这一点的信息,但这似乎不适用于DataGrid(DataGridViews缺少方法/事件处理程序)。
我想要实现的目标是基于列的结果将列的背景颜色设置为红色(例如)。
有没有人有任何建议,是转换为DataGridView将是唯一现实的选择(我想尽可能避免这种情况!)
答案 0 :(得分:0)
您可以在DataGrid样式中使用多个DataTriggers
。
<DataGrid Grid.Row="1" AutoGenerateColumns="True" VerticalAlignment="Top" ItemsSource="{Binding Items}">
<DataGrid.RowStyle>
<Style TargetType="DataGridRow">
<Style.Triggers>
<DataTrigger Binding="{Binding ItemIndex}" Value="True">
<Setter Property="Background" Value="Red"/>
</DataTrigger>
<DataTrigger Binding="{Binding ItemIndex}" Value="False">
<Setter Property="Background" Value="Blue"/>
</DataTrigger>
</Style.Triggers>
</Style>
</DataGrid.RowStyle>
...
...
</DataGrid>
此处DataTriggers
的更多信息:http://msdn.microsoft.com/en-us/library/system.windows.datatrigger.aspx