预警抱歉WPF新人在这里:
我有一个DataGrid绑定到DataTable的DefaultView
ResultDataGrid.ItemsSource = resultTable.DefaultView;
我知道列名,如果另一列是1
(总是0或1),我需要更改列的前景
目前我所拥有的:
private void ResultDataGrid_AutoGeneratingColumn(object sender, DataGridAutoGeneratingColumnEventArgs e)
{
if (e.Column.Header.ToString() == "columnName")
{
e.Column.CellStyle = FindResource("columnStyle") as Style;
}
}
并在XAML中:
<Window.Resources>
<Style TargetType="DataGridCell" x:Key="columnStyle">
<Setter Property="Foreground" Value="Black"/>
<Style.Triggers>
<DataTrigger Binding="{Binding resultTable, Path={StaticResource otherColumnName}}" Value="1">
<Setter Property="Foreground" Value="Red"/>
</DataTrigger>
</Style.Triggers>
</Style>
</Window.Resources>
在构造函数
中设置otherColumnNamepublic ResultsCustom(DataTable resultclass, CustomQuery query)
{
// Some other stuff
this.Resources.Add("otherColumnName", COLUMN_NAME);
}
XAML Style似乎没有正确的路径,任何帮助都会受到赞赏!
答案 0 :(得分:0)
我不确定这行代码:
Path={StaticResource otherColumnName}
您是否正在尝试比较该属性&#34; otherColumnName&#34;结果表是否为1?这不是一个静态资源,您可以将绑定更改为:
Path=otherColumnName