DataGridView - DefaultCellStyle,行和列优先级

时间:2011-01-12 20:49:53

标签: c# visual-studio datagridview

在C#中,在DataGridView中我想为第一行和第一列设置BackColor属性。第一行和第一列的单元格应该具有第一列的属性,而不是行 - 但它确实存在。

例如:(表3 x 3); 'X' - 第一行的属性,'Y' - 第一列的属性,'a' - 默认属性

  • 应该是:

Y X X
是的a 是的,

  • 但是:

X X X
是的a 是的,

无论我首先设置哪个属性:

dataGridView1.Rows[0].DefaultCellStyle.BackColor = Color.Lavender;
dataGridView1.Columns[0].DefaultCellStyle.BackColor = Color.Beige;

或:

dataGridView1.Columns[0].DefaultCellStyle.BackColor = Color.Beige;
dataGridView1.Rows[0].DefaultCellStyle.BackColor = Color.Lavender;

抱歉我的英文......

1 个答案:

答案 0 :(得分:1)

它可能是DataGridViews内部的东西,其中行样式显式地覆盖列样式,或者因为行样式应用于列样式之上。

除了为第一行和第一列设置默认样式外,请尝试直接设置第一个单元格的样式,这将覆盖任何默认值,无论是行还是列:

dataGridView1.Rows[0].DefaultCellStyle.BackColor = Color.Lavender;
dataGridView1.Columns[0].DefaultCellStyle.BackColor = Color.Beige;
dataGridView1.Rows[0].Cells[0].Style.BackColor = Color.Beige;