在DataGridView(C#)的中间插入行

时间:2012-03-26 06:26:53

标签: c# datagridview

我想在特定索引处将新的DataGridViewRow插入到我的DataGridView中。如果我只是创建一个新的行

DataGridViewRow dgwr = new DataGridViewRow();
datagridview1.Rows.Insert(index, dgwr);

我不会得到DataGridView的“设置”,例如我的“Cells”将为0.如果我使用的话,这不会发生。

DataGridView1.Add();

但话又说回来,我不能选择列表中的哪个位置,我希望发布这个帖子......

无论如何要结合这些优势吗?

/尼克

2 个答案:

答案 0 :(得分:6)

grid.Rows.Insert(index, 1);
var addedRow = grid.Rows[index];

这会在'index'处插入一个空的模板行,然后只需访问'index'中的行。 第二行用于访问刚添加的行。

如果你知道你想要的行值,也可以缩短:

grid.Rows.Insert(index, FirstName, LastName, BirthDate, Etc);

只需要确保它与网格中的列顺序同步,并使用这些字段自动生成行。

答案 1 :(得分:1)

DataGridViewDataGridRowView只是数据源的可视化表示形式,也是数据源中的一行。在将新行添加到数据源后,应在DataView中显示新的可视行。

如果要在添加新行时获取视图行,请处理RowsAdded事件。