将行添加到 datagridview 时填充特定列

Posted

技术标签:

【中文标题】将行添加到 datagridview 时填充特定列【英文标题】:Poplulate a specific column when a row is added to a datagridview 【发布时间】:2013-12-18 02:41:32 【问题描述】:

我正在使用以下代码来更新数据库。

int lastRow = inventoryDataGridView.Rows.Count - 1;
inventoryDataGridView.Rows[lastRow].Cells[1].Value = variableName;

但是,如果在保存数据库之前添加了多行,那么它将只保存最后一行。所以我尝试了这段代码。

foreach (DataGridViewRow row in this.inventoryDataGridView.Rows)

    row.Cells[1].Value = variableName;

这样做的问题是它会更新给定列中的每个单元格以包含已经有值的单元格。这效率不高。有关如何仅更新新添加行的给定列的任何建议?

谢谢。

【问题讨论】:

你在处理什么事件? 你想达到什么目的? 我想将 variableName 中保存的字符串添加到所有新添加行的第二列,而不仅仅是最后一行。我相信计数从 0 开始,所以它实际上是第 1 列。我在想每次添加新行时我都可以使用一种事件更改方法。我试图在 MSDN 网站上查看事件更改方法,但我无法启动该网站。我会继续努力的。 【参考方案1】:

这似乎符合我的目的。一旦我开始在空白行中输入,它将向 datagridview 添加另一行,并使用 variableName 值填充我输入的新行的给定列。

private void inventoryDataGridView_RowsAdded(object sender, DataGridViewRowsAddedEventArgs e)

    int lastRow = inventoryDataGridView.Rows.Count - 1;
    inventoryDataGridView.Rows[lastRow - 1].Cells[2].Value = accountNumber;

【讨论】:

以上是关于将行添加到 datagridview 时填充特定列的主要内容,如果未能解决你的问题,请参考以下文章

格式化 DataGridView 中的特定行

如何将项目添加到 DataGridView ComboBoxColumn?

将行号列添加到绑定到 DataTable 的 DataGridView

将行更新到特定列

将数据添加到已存在组合框列的 dataGridView 行

datagridview 指定列columntype的怎么设置