我想在dataGridview中为某些行着色,并使用下面的代码成功完成,但是一旦我向datagridview添加了更多行,它们都会重置为白色。
此代码检查在datagridview中创建它的前一个集合中的所有行,并将它们涂成浅蓝色。 这些行由集合匹配,背景颜色表示哪些行在一起,每个集合在白色和蓝色之间交替。
向datagridview添加另一组行会将datagridview中所有先前行的背景颜色重置为白色,我不知道为什么,我应该重载某个事件?我不知所措。
这是我改变任何颜色的唯一例子,我没有任何类型的事件被覆盖。
List<DataRow> dgvr = new List<DataRow>();
foreach(DataGridViewRow row in dataTaken1.SelectedRows)
{
// Adding selected rows from the first datagridview to the set
}
foreach (DataGridViewRow row in dataTaken2.SelectedRows)
{
// Adding selected rows from the second datagridview to the set
}
foreach(DataRow row in dgvr)
{
dataTable1.Rows.Add(row); // This is the dataTable that is bound to the datagridview
dataTable1.AcceptChanges();
dataGridView1.Update();
}
if (bordercolor % 2 == 1)
{
foreach (DataRow row in dgvr)
{
dataGridView1.Rows[dataTable1.Rows.IndexOf(row)].DefaultCellStyle.BackColor = Color.LightBlue;
}
}
bordercolor++; // ensures that the next set has a different background color
编辑:这是一张图片,展示了我希望我的行如何显示,各组之间的颜色交替,例如,灰色是奇数编号设置颜色,浅蓝色是偶数编号设置颜色。