VB.NET 2行被添加到datatable而不是1

时间:2014-05-27 19:03:13

标签: vb.net datatable

以下是代码:

    Private Sub AddNewDgvRow(dgv As DataGridView)
      Dim dt As DataTable = dgv.DataSource.DataSource.Client
      Dim myRow As DataRow = dt.NewRow
      dt.Rows.Add(myRow)                      <-------- adds 2 rows at this point
    End Sub

问题是这段代码增加了2行,我不知道为什么。

dgv.Datasource产生一个BindingSource,而dgv.Datasource.Datasource产生一个DataSet

尝试了没有dt.Rows.Add()的dt.NewRow,它在语法上采用了它,但后来我得到了一个实例错误。我需要.NewRow来创建架构记录默认值。

有什么想法吗? VS2013.2中的VB.NET非常感谢你!

-HB

1 个答案:

答案 0 :(得分:1)

是&#34;允许用户添加行&#34;组?这是真的,添加行不需要代码。因此,DataGridView会自动添加它,然后您的代码(在AddNewDgvRow中)再次添加它。

正如您在关于CellEnter事件的原始帖子的评论中引用的那样,有时程序员可能想要使用DataGridView的内置功能,有时我们需要更多控制。