兄弟,既然下了,看了,我就回1下吧.你这种弄法貌似不好.我是这样弄
先,把DGV里面那行去掉,然后再更新数据库
If DataGridView1.CurrentRow.Index > -1 Then
DataGridView1.Rows.RemoveAt(DataGridView1.CurrentRow.Index)
End If
.........
下面再更新数据库
这个是LINQ的,我的项目中的,类似例子,用循环插入
If DataGridView1.Rows.Count > 0 Then
'DGV第一行为0,所以 -1 ,如果手动可以DGV输入,最后多1行,就要-2
For i As Integer = 0 To DataGridView1.Rows.Count - 1
'定义1个变量为表,表也是类. 插入,必须类型相同,强制转换
Dim newqc = New Stuff With {.ID = 110, _
.单号 = DH, _
.领用器材名称 = DataGridView1.Rows(i).Cells("领用器材名称").Value, _
.领用器材型号 = DataGridView1.Rows(i).Cells("领用器材型号").Value, _
.领用器材数量 = Val(DataGridView1.Rows(i).Cells("领用数量").Value), _
.维修器材名称 = DataGridView1.Rows(i).Cells("维修器材名称").Value, _
.维修器材型号 = DataGridView1.Rows(i).Cells("维修器材型号").Value, _
.维修器材数量 = DataGridView1.Rows(i).Cells("维修数量").Value, _
.单价 = Val(DataGridView1.Rows(i).Cells("单价").Value), _
.总价 = Val(DataGridView1.Rows(i).Cells("总价").Value)}
DB.Stuff.InsertOnSubmit(newqc)
Next
DB.SubmitChanges()