代码修改绑定的datagridview后如何直接保存至数据库?

wanshaojun 2017-10-11 02:07:14
在绑定的datagridview中用代码修改(datagridview1.CurrentRow.Cells.Item("列名").Value =1)某单元格后,数据集内数据已经更改,但行的状态(RowState)任然为未变化(Unchanged)状态,此时无法将数据更新至数据库。然后在其他行单击一下后,刚才修改的行的状态(RowState)即刻变化为修改(Modified)状态,此时可将数据更新至数据库。请问我可用何代码替代鼠标单击其他行这个部分,即怎样用代码修改后的行的状态(RowState)直接变为修改(Modified)状态???
...全文
528 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
eaqpi 2019-06-11
  • 打赏
  • 举报
回复
不要操作datagridview,如果你确定要这么写的话,在绑定的数据表的时候加上bindingsource。然后用bindingsoucre的endedit?commit?之类的才行。

建议:在填写数据的时候,直接写入Data'Table。不要操作datagridview。
it_gz_xi 2019-06-11
  • 打赏
  • 举报
回复
DataGridView1.EndEdit()应该可以的,调试一下问题出在哪里? 以前做过这种,之前绑定的是EF数据,处理起来更加方便
轻鸿万里 2019-06-10
  • 打赏
  • 举报
回复
在datagridview停止编辑事件添加保存数据操作就行了。
波饭 2019-02-25
  • 打赏
  • 举报
回复
this.dataGridView1.CurrentCell = this.dataGridView1[dataGridView1.CurrentCell.ColumnIndex, dataGridView1.Rows.Count - 1];

类似的换下行,这个换到最后一行了,你可以换下一行
wanshaojun 2017-10-13
  • 打赏
  • 举报
回复
引用 9 楼 xyxcc177109 的回复:
DataGridView1.EndEdit()
在提问前就试了,光是这句无法完成修改。
exception92 2017-10-12
  • 打赏
  • 举报
回复
引用 6 楼 wanshaojun 的回复:
[quote=引用 5 楼 duanzi_peng 的回复:] 修改之后调用dgv的CommitEdit方法提交编辑。
请问具体该如何写啊 我赋值的时候写了几条:datagridview1.CurrentRow.Cells.Item("列名x").Value =xxx[/quote] 搜CommitEdit的用法就知道怎样写了。
xyxcc177109 2017-10-12
  • 打赏
  • 举报
回复
DataGridView1.EndEdit()
wanshaojun 2017-10-12
  • 打赏
  • 举报
回复
mark 等待高手
wanshaojun 2017-10-11
  • 打赏
  • 举报
回复
引用 5 楼 duanzi_peng 的回复:
修改之后调用dgv的CommitEdit方法提交编辑。
请问具体该如何写啊 我赋值的时候写了几条:datagridview1.CurrentRow.Cells.Item("列名x").Value =xxx
exception92 2017-10-11
  • 打赏
  • 举报
回复
引用 4 楼 wanshaojun 的回复:
[quote=引用 2 楼 duanzi_peng 的回复:] 数据源是DataSet ? DataSet的AcceptChanges 方法。
就是数据库填充(Fill)数据集(dataset),数据集(dataset)作为datagridview的数据源。 用AcceptChanges 方法同三楼解释一样[/quote] 修改之后调用dgv的CommitEdit方法提交编辑。
wanshaojun 2017-10-11
  • 打赏
  • 举报
回复
引用 2 楼 duanzi_peng 的回复:
数据源是DataSet ? DataSet的AcceptChanges 方法。
就是数据库填充(Fill)数据集(dataset),数据集(dataset)作为datagridview的数据源。 用AcceptChanges 方法同三楼解释一样
wanshaojun 2017-10-11
  • 打赏
  • 举报
回复
引用 1 楼 daixf_csdn 的回复:
应该有个方法类似acceptxxx
你说的是 AcceptChanges ?这个是Update后接受更改吧,要是先用这个的话所有修改、删除等标记的行将执行变化,最终所有行的状态(RowState)均为未变化(Unchanged)状态,这个时候再去更新就更没意义了
exception92 2017-10-11
  • 打赏
  • 举报
回复
数据源是DataSet ? DataSet的AcceptChanges 方法。
圣殿骑士18 2017-10-11
  • 打赏
  • 举报
回复
应该有个方法类似acceptxxx

16,554

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧