找回密码
 立即注册

QQ登录

只需一步,快速开始

20161

最新发帖
20161
注册会员   /  发表于:2018-5-21 09:24:20
11#
JeffryLI 发表于 2018-5-18 17:12
这个可以支持您修改之后,再去对应修改DataTable的方法,比通过ID 找的快

这个是普通代码实现通过这一行的ID去修改对应的值吗,不是这个控件的属性之类的来自动化实现,如果是控件属性的话,麻烦您能提供一下可参考的例子,谢谢
回复 使用道具 举报
JeffryLI
葡萄城公司职员   /  发表于:2018-5-21 09:54:34
12#
20161 发表于 2018-5-21 09:24
这个是普通代码实现通过这一行的ID去修改对应的值吗,不是这个控件的属性之类的来自动化实现,如果是控件 ...

是的,还有一点不是很明白,为什么修改grid里面的值,要去更新dataTable的值,为什么不直接更新数据存储里面的值(比如数据库)?
请点击评分,对我5分评价,谢谢!

葡萄城控件服务团队
官方网站: https://www.grapecity.com.cn/developer
回复 使用道具 举报
20161
注册会员   /  发表于:2018-5-21 10:57:35
13#
JeffryLI 发表于 2018-5-21 09:54
是的,还有一点不是很明白,为什么修改grid里面的值,要去更新dataTable的值,为什么不直接更新数据存储 ...

首先它是把数据库里的数据放到一个datatable中,绑定到C1flexgrid上,用户可以在grid上修改增添数据等操作,但是C1flexgrid的sort排序点击某列后,数据出现了混乱,有些列中某些行的值赋给了其他行,所以怀疑是不是C1flexgrid中的数据排序了,而datatable中没有排序导致了数据不整合。保存的时候是最后把datatable更新到数据库。这是现状,您有什么更好的建议
回复 使用道具 举报
20161
注册会员   /  发表于:2018-5-21 11:27:29
14#
目的只是为了能正常使用sort进行排序
回复 使用道具 举报
JeffryLI
葡萄城公司职员   /  发表于:2018-5-21 12:09:34
15#
您好,DataTable只是Grid和数据库中间的媒介,数据一旦展现在FlexGrid上面,基本上和DataTable的关系不是很大,如您所说的,如果要更新数据库,我们可以获取的编辑行的的ID(数据库的ID ,您可以作为隐藏列不展示)直接更新数据库,不再依赖DataTable.希望能帮到您。
请点击评分,对我5分评价,谢谢!

葡萄城控件服务团队
官方网站: https://www.grapecity.com.cn/developer
回复 使用道具 举报
20161
注册会员   /  发表于:2018-5-21 18:27:27
16#
JeffryLI 发表于 2018-5-21 12:09
您好,DataTable只是Grid和数据库中间的媒介,数据一旦展现在FlexGrid上面,基本上和DataTable的关系不是很 ...

您好,点击C1flexgrid的标题进行排序,不会触发任何事件来同步数据,
只是点了几下标题排序接着保存数据就乱了
回复 使用道具 举报
JeffryLI
葡萄城公司职员   /  发表于:2018-5-21 18:35:23
17#
您好,您能提供个demo,我这边帮您看一下。
请点击评分,对我5分评价,谢谢!

葡萄城控件服务团队
官方网站: https://www.grapecity.com.cn/developer
回复 使用道具 举报
20161
注册会员   /  发表于:2018-5-22 09:35:29
18#
JeffryLI 发表于 2018-5-21 18:35
您好,您能提供个demo,我这边帮您看一下。

demo估计无法提供,程序比较大,而且脱离环境无法运行,看不到效果。
但是流程我给您写一下:
首先通过DBH.DataTable(Me.DataSet1, SqlDetail(), "GT0F")取得数据,
绑定前对数据进行修改,比如code变成名称之类的
Me.sprSS.DataSource = Me.DataSet1.Tables("GT0F")
绑定后显示到画面上是名称之类的,然后可以编辑,修改,删除等,
重要一点是排序。
之后把datatable中的名称转换成code,DBH.UPDATE()更新到数据库。
这样的一个流程。
回复 使用道具 举报
JeffryLI
葡萄城公司职员   /  发表于:2018-5-22 11:48:33
19#
不要从datatable取值,因为您重新排过序所以值都变了,直接从表格里面获取数据,再去更新数据库。希望能帮到您。
请点击评分,对我5分评价,谢谢!

葡萄城控件服务团队
官方网站: https://www.grapecity.com.cn/developer
回复 使用道具 举报
20161
注册会员   /  发表于:2018-5-22 14:26:53
20#
JeffryLI 发表于 2018-5-22 11:48
不要从datatable取值,因为您重新排过序所以值都变了,直接从表格里面获取数据,再去更新数据库。希望能帮 ...

明白了,那样的话,是只能根据id去把grid里的每一个单元格的值取出来放到一个datatable中,再更新数据库,还不能把grid.datasource直接赋值,因为datasource看起来也没有变化
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部