【发布时间】:2014-08-06 11:46:06
【问题描述】:
我想为我的 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
编辑:这是一张图片,显示了我希望我的行如何显示,在集合之间交替颜色,例如,灰色是奇数集颜色,浅蓝色是偶数集颜色。 p>
【问题讨论】:
标签: c# vb.net winforms datagridview