社区
C#
帖子详情
使用sqldataadpter更新datagridview,未能更新最后一次修改
jmg
2011-10-11 09:38:14
初次使用,请大家指教!
我是直接对datagridview的cell赋值,用关联的datatable的savexml可以在文件反应所做的修改,但用sqldataadpter的update时,不能更新最后一次修改,必须在datagridview换一行才可以更新,也调用过EndEdit,还是无效。请问大家应该如何操作。
...全文
170
23
打赏
收藏
使用sqldataadpter更新datagridview,未能更新最后一次修改
初次使用,请大家指教! 我是直接对datagridview的cell赋值,用关联的datatable的savexml可以在文件反应所做的修改,但用sqldataadpter的update时,不能更新最后一次修改,必须在datagridview换一行才可以更新,也调用过EndEdit,还是无效。请问大家应该如何操作。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
23 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
jmg
2011-10-14
打赏
举报
回复
这个应该有好办法处理呀,望知者言教,拜托呀,先谢了!
jmg
2011-10-13
打赏
举报
回复
请大家指教小弟呀,太晕了
jmg
2011-10-13
打赏
举报
回复
这样处理?
我是程序中自动给datagridview的cell赋值的,如果我同时更改多行,调用update时,也只有当前行未被处理,只要鼠标更换当前单元格(可以在同行)或在程序中移动当前单元格(需要在不同行),不是更新时间的问题,造成问题产生就是我没有通过datagridview输入值,而是代码赋值,这样似乎如果修改当前行的某个单元值,不移动当前单元格,该行的RowState未变成
Modified
照成的。
请问怎么会这样呢?
山东蓝鸟贵薪
2011-10-13
打赏
举报
回复
你应该在更新最后一条记录也及时更新到数据库中即可
jmg
2011-10-13
打赏
举报
回复
问题如此解决:
还是通过修改CurrenCell来解决的,我开始用的只左右移一下,没有效果,现在我下上移一下就可以保存了,可是怎么用鼠标点击同行就可以呢?另我我下上移一下,如果用户只是拖动滚动条看到而没有用鼠标点击Cell,我一切换CurrenCell,datagridview画面就移动,显示当前单元格了,有办法解决吗
我还是觉得这样做,有些不妥,因为datagridview的allowuseradd是false,只有一行的话,我还要true一次再切换行,然后再false,而且很别扭。
有好的解决方法吗,请大家指教。
jmg
2011-10-12
打赏
举报
回复
我想应该是这个问题,可是我怎么确定是哪个DataRow呢?
sdl2005lyx
2011-10-12
打赏
举报
回复
你遍历tb.Rows,查看每个行的DataRow.RowState 行状态,如果发现有Added、Modified的,说明AcceptChanges 尚未调用。
那么,你调用:DataRow.AcceptChanges 方法
jmg
2011-10-12
打赏
举报
回复
肯定是我writexml就是看更新的,结果正常呀
sdl2005lyx
2011-10-12
打赏
举报
回复
你不是说:“查看关连的datatable确实值已更改了”,这会怎么有没更新,到底怎么回事?
你看看:DataTable tb=(DataTable )dataGridView1.DataSource;
tb的值到底是不是最新的?
jmg
2011-10-12
打赏
举报
回复
还是不行,更新为0行。
sdl2005lyx
2011-10-12
打赏
举报
回复
那你换成这样:
保存:
DataTable tb=(DataTable )dataGridView1.DataSource;
tb.WriteXml("d:/dd.xml",false);
textBox1.Text = myDataAdapter.UpdateCommand.CommandText;
int i = myDataAdapter.Update(tb));
textBox2.Text = i.ToString();
jmg
2011-10-12
打赏
举报
回复
绑定
dataGridView1.DataSource=dtRWB;
赋值
dataGridView1.CurrentRow.Cells["Ignore"].Value = true;
保存
dtRWB.WriteXml("d:/dd.xml",false);
textBox1.Text = myDataAdapter.UpdateCommand.CommandText;
int i = myDataAdapter.Update(dtRWB));
textBox2.Text = i.ToString();
sdl2005lyx
2011-10-12
打赏
举报
回复
你把这部分代码贴出来看看。。。
jmg
2011-10-12
打赏
举报
回复
我是选中datagridview的某行,点按钮然后对某些单元格修改值,最后点按钮保存的。
如何对datatable直接操作?确定对应的当前行?
我描述的可能不正确,update应该是不能更新当前行的值,除我用鼠标将当前单元格移动,如果代码更换似乎了无效,唉,实在是不会用,希望有人教我,谢谢!
jmg
2011-10-12
打赏
举报
回复
使用dtRWB.AcceptChanges无效
sdl2005lyx
2011-10-11
打赏
举报
回复
也试试这个:
dataGridView1.RefreshEdit();
sdl2005lyx
2011-10-11
打赏
举报
回复
试试这个:
dataGridView1.CommitEdit(DataGridViewDataErrorContexts.Commit);
jmg
2011-10-11
打赏
举报
回复
请大家多指教
sdl2005lyx
2011-10-11
打赏
举报
回复
那里直接用关连的datatable,不是更直接吗?
jmg
2011-10-11
打赏
举报
回复
我是通过点击按键来对datagridview赋值的,而不是在当前cell编辑的
refresh和endedit,commintedit,都没效果。
我是点按钮开始保存的,所以datagridview的焦点应该已失去了
唉,查看关连的datatable确实值已更改了,怎么会这样呢,不知道犯了什么低级错误,
有没有人遇到同样的问题呀。
加载更多回复(3)
C#
data
gridview
+combox更改一列值并更改另一列值,实现时间的
更新
Data
GridView
当更改了其中一列的值后,动态更改另一列的值。 功能就是
更新
某列数据,相应的
更新
时间也要更改,
使用
的是Access数据库。完整版本。.
vb.net
Data
GridView
控件用法合集
23.
Data
GridView
根据单元格属性更改显示内容 24.
Data
GridView
新追加行的行高样式设置る 25.
Data
GridView
新追加行单元格默认值设置
Data
GridView
中输入错误数据的处理(五) 26.
Data
GridView
单元格数据错误标签...
C# 实战项目——快递单打印软件
2、分割Form窗体 3、
Data
GridView
数据表格的
使用
4、
使用
C#操作
SQL
Server数据库 5、以二进制形式在数据库中存储数据 6、自定义控件的应用 7、C#打印组件的
使用
8、控件的动态添加与删除
C#
data
gridview
与数据源绑定后对数据的,增加,删除,插入,
更新
C#
data
gridview
与数据源绑定后对数据的,增加,删除,插入,
更新
C#
data
gridview
与数据源绑定后对数据的,增加,删除,插入,
更新
【C#】完美实现ComBox多列下拉框+自动完成+
Data
GridView
自定义列
灵活:数据源、下拉框内显示的列、列名、可搜索关键字等可自由定义 方便:可输可选/支持键盘操作/模糊过滤/自动完成匹配 标准:通过继承combobox实现,可单独
使用
,也可嵌入
data
gridview
使用
感谢“随风飘散”
C#
110,533
社区成员
642,574
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章