度量快速开发平台-专业、快速的软件定制快开平台

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 部件 流程 SQL
查看: 2100|回复: 9
打印 上一主题 下一主题

[分享] 网格部件【修改单条数据】不刷新更新修改后的数据

  [复制链接]

67

主题

685

帖子

1815

积分

作者

Rank: 7Rank: 7Rank: 7

积分
1815
跳转到指定楼层
楼主
发表于 2020-4-20 17:08:36 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
一般情况下我们在构建增删改查窗体的时候,如果修改了某条数据会调用刷新功能来刷新网格中的数据,修改代码如下:
        dim form1 = 创建窗体("a4011f01-6826-4868-b8c8-633251a188eb")
        form1.Input1="EDIT"
        form1.Input2=网格部件1.GetFocusedRowValue("ID")
        form1.ShowDialog()
        call("刷新")
但是这样如果数据多的话会很慢,所以用一下方法解决:
        dim form1 = 创建窗体("a4011f01-6826-4868-b8c8-633251a188eb")
        form1.Input1="EDIT"
        form1.Input2=网格部件1.GetFocusedRowValue("ID")
        form1.ShowDialog()
        '判断如果打开的编辑窗体的Output1有值,说明是已经修改成功,那么就更新修改的这一条数据
        if isnull(form1.Output1)=false then
                '查询出被修改的数据
                dim dt=ExecuteSelect("select * from meis_设备基本信息 where ID='"&网格部件1.GetFocusedRowValue("ID")&"'")
                '获取修改的这一行数据的赋值到newdr
                dim newdr=dt.Rows[0]
                '循环网格部件1并判断查询出来的数据中是否有网格部件的字段
                for each c in 网格部件1.DataTable.Columns
                        if dt.Columns.Contains(c.ColumnName) then
                                '如果查询出来的数据中的字段有网格部件中的字段就更新这个字段的值
                                网格部件1.SetFocusedRowValue(c.ColumnName,newdr[c.ColumnName])
                        end if
                next       
        end if


分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

348

主题

3572

帖子

9335

积分

论坛元老

Rank: 8Rank: 8

积分
9335
沙发
发表于 2020-4-20 17:24:05 | 只看该作者
这么整可能是会比整体刷新好点O(∩_∩)O哈!
若現在就覺得失望無力,未來那麽遠妳該怎麽扛...
————————————————————————致自己
回复 支持 反对

使用道具 举报

348

主题

3572

帖子

9335

积分

论坛元老

Rank: 8Rank: 8

积分
9335
板凳
发表于 2020-4-20 22:00:08 | 只看该作者
这么好的分享,怎么没人顶楼?
若現在就覺得失望無力,未來那麽遠妳該怎麽扛...
————————————————————————致自己
回复 支持 反对

使用道具 举报

542

主题

5916

帖子

1万

积分

作者

Rank: 7Rank: 7Rank: 7

积分
13589
地板
发表于 2020-4-21 10:07:34 | 只看该作者
顶一个
回复 支持 反对

使用道具 举报

198

主题

1313

帖子

3784

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
3784
5#
发表于 2020-4-22 11:08:15 | 只看该作者
这个是大幅提高效率的表现。大家都可以按照这个来构建设置。
回复 支持 反对

使用道具 举报

198

主题

1313

帖子

3784

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
3784
6#
发表于 2020-4-22 11:09:04 | 只看该作者
项目初期是快速实现客户的原型,后面细节调整,功能完善,这些都是需要注意的知识点。
回复 支持 反对

使用道具 举报

328

主题

3738

帖子

8566

积分

作者

Rank: 7Rank: 7Rank: 7

积分
8566
QQ
7#
发表于 2020-4-23 14:59:31 | 只看该作者
提供效率不错!
回复 支持 反对

使用道具 举报

67

主题

685

帖子

1815

积分

作者

Rank: 7Rank: 7Rank: 7

积分
1815
8#
 楼主| 发表于 2020-4-23 17:13:58 | 只看该作者
这两个看上去有点像,但是要注意代码,有一点点不一样
回复 支持 反对

使用道具 举报

78

主题

634

帖子

1598

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1598
9#
发表于 2020-4-24 10:14:41 | 只看该作者
这个知识点不错。
但是最好在网格部件更新后,将数据源做一下提交,以清除更新标识。
网格部件1.DataTable.AcceptChanges()
回复 支持 反对

使用道具 举报

348

主题

3572

帖子

9335

积分

论坛元老

Rank: 8Rank: 8

积分
9335
10#
发表于 2020-4-24 22:04:26 | 只看该作者
若現在就覺得失望無力,未來那麽遠妳該怎麽扛...
————————————————————————致自己
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|重庆度量科技  本站关键词:快速开发平台

GMT+8, 2024-11-28 06:05 , Processed in 0.135885 second(s), 26 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表