Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/rust/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Vb.net DataGridView最后一行未提交_Vb.net_Datagridview_Vsto_Dataadapter - Fatal编程技术网

Vb.net DataGridView最后一行未提交

Vb.net DataGridView最后一行未提交,vb.net,datagridview,vsto,dataadapter,Vb.net,Datagridview,Vsto,Dataadapter,到目前为止,我在这方面花了太长时间,搜索并没有帮助找到我遇到的问题 我有一个绑定到BindingSource现有HafData的DataGridView。当用户按下按钮时,代码将遍历所有选定的行,并标记“删除”记录的名称和日期(具有名称和日期的记录不会显示在活动列表中;将来可以取消删除) 现在的情况是,除了最后一张唱片外,这张唱片对所有唱片都很好。例如,如果用户选择五条记录,则四条记录将正确更新;最后一个选中的行(实际上,为了清楚起见)不会正确更新网格上所有选中的行,但是当我调用适配器的upda

到目前为止,我在这方面花了太长时间,搜索并没有帮助找到我遇到的问题

我有一个绑定到BindingSource
现有HafData
的DataGridView。当用户按下按钮时,代码将遍历所有选定的行,并标记“删除”记录的名称和日期(具有名称和日期的记录不会显示在活动列表中;将来可以取消删除)

现在的情况是,除了最后一张唱片外,这张唱片对所有唱片都很好。例如,如果用户选择五条记录,则四条记录将正确更新;最后一个选中的行(实际上,为了清楚起见)不会正确更新网格上所有选中的行,但是当我调用适配器的update时,只返回四行而不是五行(在DB的数据表中,四行收到了值,最后一行没有)

在上面的代码中,DidCommit是True。然而,LinesChanged比我预期的要少一个


我尝试在最后一次单元格更改后添加行,如
MainData.EndEdit()
,但这并没有改变行为。如果在提交之前暂停例程并手动编辑单元格,则所有行都会保存。(这向我暗示,它并没有完全脱离编辑模式,但如果是这样的话,我找不到任何证据或结束编辑的方法)

@jmcillhinney拥有丢失的片段。通过添加
ExistingHAFData.EndEdit()
,我现在可以将100%的修改行保存到数据库中

        Dim DidCommit As Boolean = MainData.CommitEdit(DataGridViewDataErrorContexts.Commit)
        ExistingHAFData.EndEdit()
        Dim LinesChanged As Integer = DeleteAdapter.Update(CType(ExistingHAFData.DataSource, Data.DataTable))

我一直错误地认为是网格本身“导致”了问题,而不是bindingsource。

在保存之前,您应该在
bindingsource
上调用
EndEdit
        Dim DidCommit As Boolean = MainData.CommitEdit(DataGridViewDataErrorContexts.Commit)
        ExistingHAFData.EndEdit()
        Dim LinesChanged As Integer = DeleteAdapter.Update(CType(ExistingHAFData.DataSource, Data.DataTable))