我正在将选定的行绑定到需要添加到数据库的新数据行。
我正在使用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
创建一个新行,从当前选定的行中复制数据,修改该数据,然后将该行添加到表中。
首先,你应该通过BindingSource
绑定你的DataTable
,并从中获得选择:
'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)