关于数据绑定的问题,为什么修改后的数据不能保存到数据库中 加一句(好象是Accept还是什么?忘记了,不好意思:-)),使得DataSet接受更改的内容就可以了.祝你好运! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 textBox中的数据只有当textBox失去焦点时才更新到dataset。并且,若textBox中的数据不符合dataset中子段的约束将不能更新 这个我也知道,但微软的设计师没道理这样设计的,是不是好有其他的解决方案,而且没道理我每次Update前,还要用户手工的把焦点点击到其他的控件上吗,这样做出来的东西多丑陋,有没有哪位大侠给出一个完美的解决方案 在Update事件里,第一个先做:dataGrid1.CurrentRowIndex=任意行只要不是当前行;不就解决了么? 先谢过了,可是我现在不是用的dataGrid,而是ListBox和TextBox,而且,如果我选出的满足条件的数据库的记录只有一条怎么办呢? dataSet11.Tables[表名].Rows[行号].EndEdit(); to sheep2002dataSet11.Tables[表名].Rows[行号].EndEdit();这个我也试过,但是根本不行,不知道是不是我的什么没设置好,我估计系统在BindingManagerBase.PositionChanged响应时,才去将控件中的数据更新到Dataset,所以我在Update前加入一条语句((CurrencyManager)this.BindingContext[dataSet11,"File"]).Position=((CurrencyManager)this.BindingContext[dataSet11,"File"]).Position;强制把Position赋值一次(实际上并没有改变Position的值,但系统会发出PositionChanged消息),让系统发出PositionChanged消息,这个时候,其他情况都可以通过,但是,如果修改的是Dataset的最后一条记录,莫名其妙的接收到一个数据库并发访问异常,不知道是什么原因,还望高手赐教!!先谢过 怎么没人回,还不让人回家睡觉了?:)dataSet11.Tables[表名].Rows[行号].EndEdit();是好使的,我以测试通过。你让系统发出PositionChanged消息,其实也是为了EndEdit()的,对不对?这样,你做一个纯净的西项目,只是验证EndEdit()好不好使,你看看,我想在你的项目中,也许有的地方执行了类似AcceptChanges()的函数,改变了RowState又,控件中的数据更新到Dataset,不是在BindingManagerBase.PositionChanged响应时,其实控件中的数据早已更新到Dataset,只不过该行的RowState直到EndEdit()才由Unchanged变为Modified 请微软专家来解决! 我在windows的datagrid同样遇到这种问题. dataSet11.Tables[表名].Rows[行号].EndEdit();你们用都不好使么?我用怎么好使?奇怪????研究,研究,看看怎么才能不好使,研究中。 不知道你绑定的是那种控件,DataGrid就可以,(那时候根本不用调用EndEdit都可以)但如果是ListBox就不行,说是有访问冲突,我不知道是什么原因,不知道大哥可不可以把你的代码发给我一下,万分感谢[email protected] up现在把问题简化以下,就一个TextBox,绑定到数据库,怎样自动讲修改保存 up这里人气还挺旺的。请问在DataGrid中如何插入一条记录。 下面这个方法可以解决:{this.BindingContext[this.dataSet11 ,"TabEmployees"].EndCurrentEdit () ; this.sqlDataAdapter1.Update(this.dataSet11) ; this.dataSet11.AcceptChanges();} 谢谢JTCY23,真的解决了问题,但现在又有了一个新的问题,如果有两个控件同时绑定到同一个数据时,会出现访问冲突得异常,不知道是什么问题,不管怎么说,谢谢你先了 呜呜呜,原来问题还是没有解决,算了,问题是你的方案好像就就算不是绑定到同一个数据上,也后出现异常,说是Update 0条数据之类的, 关于重用问题,欢迎大家加入讨论http://www.csdn.net/expert/topic/951/951819.xml?temp=.8591577 c#打印程序 WPF程序是不是也需要.net 预先安装才能运行? 求一个C#.Net连接到ORACLE数据库的连接字符串 请各位程序员进来看看指点 如何屏蔽中文状态下的字符 如何在没有安装.netFramework的机器上安装C#.net写的程序? 这几个命名空间我要到哪里去找 关于执行效率的问题请教,谢谢 有哪位大虾知道vss6.0c的中文版下载。请见告,急,有高分,决不食言。 JSON返回来的OBJECT如何转成List 谁有正式版的Rational XDE professional??? 怎样在MDI窗体菜单中调用当前活动子窗体的事件?如:调用子窗体中的保存按钮的click事件
并且,若textBox中的数据不符合dataset中子段的约束将不能更新
dataGrid1.CurrentRowIndex=任意行只要不是当前行;
不就解决了么?
dataSet11.Tables[表名].Rows[行号].EndEdit();这个我也试过,但是根本不行,不知道是不是我的什么没设置好,
我估计系统在BindingManagerBase.PositionChanged响应时,才去将控件中的数据更新到Dataset,所以我在Update前加入一条语句
((CurrencyManager)this.BindingContext[dataSet11,"File"]).Position=((CurrencyManager)this.BindingContext[dataSet11,"File"]).Position;
强制把Position赋值一次(实际上并没有改变Position的值,但系统会发出PositionChanged消息),让系统发出PositionChanged消息,这个时候,其他情况都可以通过,但是,如果修改的是Dataset的最后一条记录,莫名其妙的接收到一个数据库并发访问异常,不知道是什么原因,还望高手赐教!!先谢过
是好使的,我以测试通过。你让系统发出PositionChanged消息,其实也是为了EndEdit()的,对不对?这样,你做一个纯净的西项目,只是验证EndEdit()好不好使,你看看,
我想在你的项目中,也许有的地方执行了类似AcceptChanges()的函数,改变了RowState又,控件中的数据更新到Dataset,不是在BindingManagerBase.PositionChanged响应时,其实控件中的数据早已更新到Dataset,只不过该行的RowState直到
EndEdit()才由Unchanged变为Modified
dataSet11.Tables[表名].Rows[行号].EndEdit();你们用都不好使么?我用怎么好使?奇怪????研究,研究,看看怎么才能不好使,研究中。
调用EndEdit都可以)但如果是ListBox就不行,说是有
访问冲突,我不知道是什么原因,不知道大哥可不可以
把你的代码发给我一下,万分感谢
[email protected]
现在把问题简化以下,就一个TextBox,绑定到数据库,怎样自动讲修改保存
这里人气还挺旺的。请问在DataGrid中如何插入一条记录。
{
this.BindingContext[this.dataSet11 ,"TabEmployees"].EndCurrentEdit () ;
this.sqlDataAdapter1.Update(this.dataSet11) ;
this.dataSet11.AcceptChanges();
}
http://www.csdn.net/expert/topic/951/951819.xml?temp=.8591577