单击按钮时删除数据网格视图中的一行

本文关键字:一行 视图 按钮 删除 数据 网格 数据网 单击 | 更新日期: 2023-09-27 18:07:30

我有一个form1form2 .

form1:我有一个datagridview与按钮列。当我单击任何一行的按钮单元格时,相应的行值将被转移到form2。

Form 2:通过使用setter和getter,我得到了Form 1的值,并在Form 2的文本框中表示值,这很好。

我在表单2中有一个复选框。当我单击复选框时,我需要删除表单1中的数据网格视图中的行(当我单击按钮单元格时,其行值被转移到表单2)。该行将从form1中的数据网格视图中删除。

如何解决这个问题?

单击按钮时删除数据网格视图中的一行

当您从Form1传递数据到Form2时,也传递行索引。它将帮助您轻松删除行。

将Form1的DataGridView标记为public或将其作为构造函数参数传递给Form2,然后调用DataGridView1.Rows.RemoveAt(rowIndex);删除rowIndex指定索引处的行

如果您知道如何从同一表单的网格视图中删除记录,这很容易。

您可以按照与Stack Overflow问题的答案相同的方式更新gridview

作为事件参数,您可以传递记录ID。

您可以使用RemoveAt方法从网格视图中删除记录。

DataGridView1.Rows.RemoveAt(deleteIndex);

但是,如果您共享数据源并将其从表单2中删除,则需要再次绑定数据以从网格中删除。(关于如何更新gridview,请参见如何:实现属性更改通知)

如果你在form1上直接从gridview中删除它,你就不需要再绑定它了

foreach (DataGridViewRow item in this.dataGridView1.SelectedRows)
{
  dataGridView1.Rows.RemoveAt(item.Index);
}