CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
山寨机中的战斗机! 程序优化工程师到底对IT界有没有贡献
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  VB >  数据库(包含打印,安装,报表)

用一个ADODB.Recordset对象集rst可不可以既操作DataGrid又做数据的添加,移动等?(暴急))

楼主gohomesina()2003-05-02 02:39:57 在 VB / 数据库(包含打印,安装,报表) 提问

我的一个窗体上有四个文本框和一个datagrid控件和几个commandbutton按键。这几个按键的功能是上一条,下一条,最前条,最后条。和添加,删除,更新等。文本框和rst记录集没有绑定。是用:  
  Public   Sub   frmaddworker_display()  
          If   rst_move.BOF   =   False   And   rst_move.EOF   =   False   Then  
                  txt_code   =   rst_move!code  
                  txt_name   =   rst_move!workername  
                  txt_password   =   rst_move!password  
                  cbo_purview.ListIndex   =   rst_move!workertypecode  
          End   If  
  End   Sub  
  来更新文本框里的内容的。但如果datagrid控件显示也由rst_move做记录源,我认为很不好办,我又定义了一个rst   来专门做datagrid的记录源。但这样做又有不好的地方:就是文本框   内容不能和datagrid内容同步,就算能同步也很麻烦。而且,我的rst_move打开时是放在load事件里,更新时我又用的是rst而不是rst_move,而移动又是用的rst_move,这样导制了我更新数据在datagrid里能反应出来。而不能在我点“下一条”时反应出来。有没有更好的办法,让我用   一个记录集(rst)同时做为datagrid的数据源。并且能用它来更新数据,和移动数据,让它在文本框里反应出来。(就是点“上一条”,“下一条”这种   )  
  如还不明白,请高手留下邮箱,我把代码发给你。谢谢了! 问题点数:100、回复次数:6Top

1 楼andysun(无难)回复于 2003-05-02 03:55:44 得分 0

每次更新后,都把数据源refresh一下.Top

2 楼gohomesina()回复于 2003-05-02 09:05:05 得分 0

refresh后,datagrid里就没有数据显示。Top

3 楼wangluonanhai(网络男孩)回复于 2003-05-02 09:17:06 得分 0

textbox好象也可以绑定到数据源。msdn有一个现成的示例Top

4 楼cnlipeng(在侠们帮帮我啊)回复于 2003-05-02 09:47:01 得分 50

我不要绑定,我用  
  Public   Sub   frmaddworker_display()  
          If   rst_move.BOF   =   False   And   rst_move.EOF   =   False   Then  
                  txt_code   =   rst_move!code  
                  txt_name   =   rst_move!workername  
                  txt_password   =   rst_move!password  
                  cbo_purview.ListIndex   =   rst_move!workertypecode  
          End   If  
  End   Sub  
  这个自定义函数显示在txtbox里!Top

5 楼chenyu5188(来自东方的狼)回复于 2003-05-02 13:57:48 得分 50

datagrid控件没有显示,是因为没有使用客户端游标。  
   
   
  rs.CursorLocation=adUseClient'使用客户端游标  
  set   datagird1.datasource=rs  
  datagrid1.refresh  
  Top

6 楼gohomesina()回复于 2003-05-04 14:44:19 得分 0

主要原因是:datagrid1显示数据后要关闭数据源。rs.close  
  而数据“上一条”,“下一条”这种操作打开后rs.open   "select   *   from   talbe"   就不能关。如果关了rs.close后,再打开,那指针又定在第一条记录上了。这就是不好解决的地方。哪位有好方法,指点一下嘛!  
  Top

相关问题

  • ADODB
  • 怎么让DataGrid用ADODB数据源?
  • recordset
  • 怎么使recordset集绑定datagrid控件
  • 为何DataGrid控件不能绑定recordset?
  • datagrid怎样绑定Recordset对象????
  • 我有个_RecordsetPtr的对象rst,怎么知道rst已经调用过CreateInstance((__uuidof(Recordset)))?
  • 用ADODB查询SQLSERVER数据库,得到的RecordSet的RecordCount为-1,为何?
  • 【急问】DataGrid和RecordSet绑定时,DataGrid中的当前行与RecordSet的游标是不是同步的?
  • 使用oledb连接access,定义ADODB rst的sql为什么不能使用DISTINCT关键字?

关键词

  • 数据
  • datagrid
  • 控件
  • 移动
  • 内容
  • code
  • rst
  • 文本框
  • move
  • 更新

得分解答快速导航

  • 帖主:gohomesina
  • cnlipeng
  • chenyu5188

相关链接

  • Visual Basic类图书
  • Visual Basic类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo