3

我正在通过 DataTable 或 DataSet 填充 DataGridView (grid1)。
我可以删除一组选定的行,然后将它们添加到另一个未绑定的 DataGridView (grid2)。
当我从 grid2 中取出一行然后将其添加到 grid1 时,就会出现问题。

当控件是数据绑定时,不能以编程方式将行添加到 DataGridView 的行集合。

发生这种情况是因为

grid1.DataSource = myDataTable
or
grid1.DataSource = myDataSet

但是当我这样做时

grid1.DataSource = Nothing

删除 grid1 中的所有行。

无论如何要从其数据源中分离 datagridview 但保留行?

4

3 回答 3

0

我还没有尝试过,但是看看 Copy 方法:

grid1.DataSource = myDataTable.Copy

MSDN 说“复制此 DataTable 的结构和数据”。 可能是复制它也会解除绑定。

于 2013-02-26T03:57:09.390 回答
0

我可以想到一个解决方案,其中我将添加另一个未绑定的 DataGridView (grid3),
以编程方式将绑定的 datagridview (grid1) 的内容复制到 grid3,
然后从那里操作它。

于 2013-02-26T03:31:44.963 回答
0

如果您有一个数据绑定网格,您可能根本不应该使用网格中的行。更改您设置为数据源的表,然后网格将反映新行。

dim row as datarow = myDataTable.newrow()
row.item("Column1") = "new value"
myDataTable.rows.add(row)

现在新行将显示在数据绑定网格上。您也可以通过从数据源数据表中删除行来从网格中删除行。

于 2015-06-25T20:28:31.770 回答