我有一个datatable
来自文件的数据 - 这将是ItemSource
我的datagrid
. 我datatable
从数据库中得到一个相同的模式。我想比较这两个数据表,如果文件中有一些行存在于数据库中,我需要检查列的值是否相等。如果不是 - 我需要将Background
单元格的颜色更改为红色。从我下面的代码中可能会更清楚:
dgrSimcards.ItemsSource = excelCards.Table.DefaultView;
var dbsource = new Tables.ExcelCards();
DBConnection.FillData(dbsource.Table);
if (!dbsource.HasRows) return;
foreach(DataRow impRow in import.Table.Rows)
{
var row = dbsource.Table.AsEnumerable().FirstOrDefault(p =>string.Compare( p[dbsource.card_numberColumn.ColumnName].ToString() ,impRow[dbsource.card_numberColumn.ColumnName].ToString())==0);
if (row != null)
{
if (string.Compare(row[import.comentsColumn].ToString(), impRow[import.comentsColumn].ToString()) != 0)
{
//here is merging problem - i need to change background colour
}
}
}
我发现可以通过 BindingProperty 更改单元格的背景。但在我的情况下,我不知道该怎么做。是的,我真的很想比较客户端的数据。任何建议表示赞赏。