将所选行绑定到新数据行,并使用导入行VB.NET

问题描述

我将所选行绑定到需要添加数据库的新数据行。

我正在使用dt.Importrow(newRow)将新的数据行添加到数据表中。

但是,如果我对此新行进行了更改,它也会更改所选行。

下面的代码

'''             Dim original_Row As DaTarow
                Dim newRow As DaTarow = dt.NewRow   
original_Row = CType(DataTbale.CurrentRow.DataBoundItem,DaTarowView).Row 

                newRow = original_Row

newRow(“ Name”)= John'在此处将值更改为新行

                dt.ImportRow(newRow)'''

解决方法

我认为您真正想做的是为DataTable创建新行,从当前选定的行复制数据,修改该数据,然后将该行添加到表中。

首先,您应该通过DataTable绑定BindingSource并从中进行选择:

'Get the current row.
Dim currentRow = DirectCast(myBindingSource.Current,DataRowView).Row

'Create a new row.
Dim newRow = myDataTable.NewRow()

'Copy existing data to new row.
newRow.ItemArray = currentRow.ItemArray

'Edit data.
newRow("Name") = "John"

'Add new row to table.
myDataTable.Rows.Add(newRow)