Datagridview以编程方式添加具有单元格样式的行

Datagridview add row with cell style programmatically

dgvStatus 是一个只有一列的 DataGridView。

下一行正在添加新行

dgvStatus.Rows.Add("XYZ");

但是我想改变单元格文本的颜色所以我写了下面的代码

DataGridViewRow row = new DataGridViewRow();
DataGridViewCellStyle style = new DataGridViewCellStyle();
style.ForeColor = Color.Red; // the color change
row.DefaultCellStyle = style;
row.Cells[0].Value = "XYZ";
dgvStatus.Rows.Add(row);

但是这段代码给出错误 -

如何解决。

更新:

当我根据@ASh的回答更改我的代码时

dgvStatus.Rows.Add(row);
row.Cells[0].Value = "XYZ";

然后它给出以下错误-

行没有单元格,直到您将它添加到网格

dgvStatus.Rows.Add(row);
row.Cells[0].Value = "XYZ";

更新

如果它不起作用,试试这个:

int idx = dgvStatus.Rows.Add("test");
var row = dgvStatus.Rows[idx];
DataGridViewCellStyle style = new DataGridViewCellStyle();
style.ForeColor = Color.Red; // the color change
row.DefaultCellStyle = style;