我有一个有趣的问题。我正在尝试使用数据表作为数据网格视图的数据源。我想为表格的某些单元格着色以指示各种事物,但由于某种原因,颜色不会显示。所以下面的代码显示了一个未着色的单元格。
dataGridView1.DataSource = table;
dataGridView1.Rows[0].Cells[0].Style.BackColor = Color.Yellow;
我只能在初始表单加载后显示颜色(例如在 OnClick 事件上设置单元格颜色)。但是,如果我像下面的代码那样为视图显式创建行和列,则着色会起作用。
foreach (DataColumn col in table.Columns)
dataGridView1.Columns.Add(col.ColumnName, col.ColumnName);
for (int i = 0; i < table.Rows.Count; i++)
{
var row = table.Rows[i];
object[] values = new object[table.Columns.Count];
for (int x = 0; x < table.Columns.Count; x++)
values[x] = row[x].ToString();
dataGridView1.Rows.Add(values);
}
dataGridView1.Rows[0].Cells[0].Style.BackColor = Color.Yellow;
我不想以这种方式拥有代码。有谁知道这里发生了什么阻止我给细胞着色?