【发布时间】:2014-12-24 17:12:08
【问题描述】:
我想使用以下代码将行从DataGridViewX1 移动到另一个表单的DataGridView:
按钮点击事件:
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
frmEncodeDatabase.EncodingCompleteDataGridView.DataSource = DataGridViewX1.Rows
frmEncodeDatabase.Show()
End Sub
另一个表单的DataGridView 的RowsAdd 事件:
EncodingCompleteDataGridView.Rows.Add(frmEncode.DataGridViewX1.Rows)
现在上面的代码是我遇到问题的地方:StackOverflowException。 (错误描述如下图)
【问题讨论】:
-
您正在
RowsAdded事件中添加行。这将触发RowsAdded事件,该事件将添加新行并再次引发事件并添加新行并引发事件并添加行...... -
@Bjørn-Roger Kringsjå 那我应该把代码放在哪里?我应该将它添加到 UserAddRow 上吗?
-
您应该始终操作底层数据源。在这种情况下,数据源绑定到第二个 DGV。
-
@Bjørn-Roger Kringsjå 我忘了注意我的第一个 DataGridView 不是数据有界的。我需要知道如何将第一个 DGV 的行传输到数据有界的那个 DataGridView(这会导致错误)。请帮帮我?
-
DataGridViewX1的行中是否添加了代码或其他事件?您可以查看调用堆栈(DEBUG -> Windows - Call Stack)以更好地了解正在发生的事情。
标签: .net vb.net datagridview