我尝试使用以下代码更改我的DataGridView的所有行的ForeColor:
private void dgv_CellPainting(object sender, DataGridViewCellPaintingEventArgs e) {
if (e.RowIndex >= 0) {
DataGridViewRow row = dgv.Rows[e.RowIndex];
e.CellStyle.ForeColor = Color.Green;
}
}
但是第一行没有收到更新。
还有其他人有这个问题吗?
非常感谢。
答案 0 :(得分:2)
使用CellFormatting
事件
试试这个:
private void dgv_CellFormatting(object sender,
DataGridViewCellFormattingEventArgs e)
{
e.CellStyle.ForeColor = Color.Green;
}
看到这张照片。
答案 1 :(得分:0)
问题是:第一行是选择。 要更新ForeColor后,只需清除行的选择。
private void dgv_CellPainting(object sender, DataGridViewCellPaintingEventArgs e) {
if (e.RowIndex >= 0) {
DataGridViewRow row = dgv.Rows[e.RowIndex];
e.CellStyle.ForeColor = Color.Green;
}
dgv.ClearSelection();
}