我通过代码隐藏在数据网格中创建列,如下所示:
DataGridTextColumn dgtc1 = new DataGridTextColumn();
dgtc1.Header = "Feldname";
dgtc1.Binding = new Binding("FieldName");
dataGrid.Columns.Add(dgtc1);
DataGridTextColumn dgtc2 = new DataGridTextColumn();
dgtc2.Header = "Masterwert";
dgtc2.Binding = new Binding("MasterValue");
dataGrid.Columns.Add(dgtc2);
int counter = 0;
foreach (DBManager database in databases)
{
if (!database.IsMaster)
{
DataGridTextColumn dgtc = new DataGridTextColumn();
dgtc.Header = database.DisplayName;
dgtc.Binding = new Binding("LocationValues[" + counter + "]");
dataGrid.Columns.Add(dgtc);
counter++;
}
}
我希望单元格将其背景颜色更改为特定值,具体取决于items属性“DeltaValues” .
if(DeltaValues[i] == true)
//Change the background color to x
else
//Do nothing
是否有绑定我可以为代码隐藏的列设置以实现此行为?
有任何想法吗?
1 回答
我没有测试代码 . 我不确定DataGridCell.ContentProperty属性是否正确:
或带转换器的版本 .
非常简单的转换器类: