首 页 网络编程
网页制作 图形图象 操作系统 冲浪宝典
软件教学 认证考试

网络安全 网络办公 行业资讯 评测对比
您当前位置:站长天空 -> 网页制作-> Javascript教程
datagrid控件的使用四_visualbasic教程
作者:网友供稿 点击:0
推荐
西部数码-全国虚拟主机10强!20余项虚拟主机管理功能,全国领先!第6代双线路虚拟主机,南北访问畅通无阻!可在线rar解压,自动数据恢复设置虚拟目录等.免费赠送访问统计,企业邮局.Cn域名注册10元/年,自助建站480元起,免费试用7天,满意再付款!P4主机租用799元/月.月付免压金
站内搜索
文章页数:[1] 

    使用Bookmarks和SelBookmarks跟踪记录
    Bookmarks和SelBookmarks提供了标记记录的一种手段。当编写应用程序中的特定功能(诸如允许最终用户手工地选择多个不相邻的记录,进行所选记录的大批更新)时,这就很有必要。在这些情形中,需要标记哪些记录已被选择,因此可以使用SelBookmarks集合及其属性。
    有两个函数,分别是CellText和CellValue方法,需要标记才能正确执行。

    标记用户的选择
    SelBookmarks集合包含所有选定的记录的书签。当最终用户手工选择记录时(即在单击时按住CTRL键),每一个选定的记录的书签都会加入到该集合中。使用标准的循环,用户可以知道已经选定了什么,也可以保存书签(因为可能需要恢复某个值),以及执行操作:
    DimiasInteger计数器
    DimintCountAsInteger
    intCount=DataGrid1.SelBookmarks.Count-1
    ReDimarrSelBK(intCount)声明用于保存书签的数组。
    Fori=0TointCount
      ArrSelBK(i)=DataGrid1.SelBookmarks(i)
      在此处执行操作。如果该操作必须被
      取消,则退出该循环,然后使用该数
      组来取消这些更改。
    Nexti

    通过在程序中添加到SelBookmarks集合来选择记录
    通过将记录添加到这个集合,也可以在程序中选定记录。例如,可能有一个显示指定的客户所有订货的网格。如果要高亮显示该客户花费超过$100的所有记录,则对记录进行过滤,并将结果书签添加到SelBookmarks集合。
    DimrsAsRecordset
    Setrs=Adodc1.Recordset

    WhileNotrs.EOF
      Ifrs!SupplierID=12Then
        DataGrid1.SelBookmarks.Addrs.Bookmark
      EndIf
      rs.MoveNext
    Wend

    显示计算结果字段
    假设在表中有一个名为"Price"的字段,并且想使用本地税率来计算表中每一项的税费。这就是一个计算结果字段,可以通过修改DataSource的查询来计算这个值,并把这个值返回给DataGrid控件。
    要在DataGrid控件中创建一个计算结果字段
    1.确认在机器上已为Northwind数据库建立了一个OLEDB数据源;如果还没有创建这样的一个数据源,请按照“创建Northwind的OLEDBData连接”的步骤操作。
    2.在窗体上放置一个ADOData控件和一个DataGrid控件。
    3.将ADOData控件的ConnectionString属性设置为Northwind的数据源。
    4.设置ADOData控件的RecordSource属性。在“属性”窗口中,单击“记录源”并输入SelectProductName,UnitPrice,(UnitPrice*.082)AsTaxFromProducts。
    5.将DataGrid控件的DataSource属性设置为这个ADOData控件。
    6.运行该工程。

    与类模块一起使用DataGrid控件
    如果想要访问以自定义格式或以ODBC驱动程序不直接支持的格式存放的数据,可以创建一个类来封装该数据。然后可以编写该类的自定义函数来检索这些数据。这样该类就变成了一种数据源,可以被任何数据使用者(如DataGrid控件)使用。
    在这个类模块的Initialize事件中,首先通过声明一个作为New ADODB.Recordset的变量,来创建一个ADODBrecordset对象。在创建了这个recordset对象后,再添加字段,每个数据源中的每个字段都要加入。然后使用合适的数据填充这个记录集。
    注意也可以使用OLEDB示例提供者来创建一个数据源。关于OLEDB示例提供者的详细信息,请参阅“创建带有数据提供方的部件”。
    类模块有一个GetDataMember事件,只要当数据使用者(诸如DataGrid控件)需要数据时就产生该事件。在这个事件中,Data参数被设置为在Initialize事件中所创建的recordset对象。
    如果要使用这个类模块,应创建一个具有一个DataGrid控件的窗体。在该窗体的Load事件的代码中,将该控件的DataSource属性设置为这个类。
    注意数据类模块在设计时是不可用的。例如,如果使用DataGrid控件,则当用户在“属性”窗口中单击“数据源”时,所有可用的数据源都会出现在一个下拉列表中。但其中不会有这个数据类模块,它只能在代码中设置。

    使用类模块创建一个数据源
    下面的示例使用一个类模块来创建一个简单数据源。然后通过DataSource属性将DataGrid控件绑定到该模块。
要创建一个用于DataGrid的类
    1.创建一个新的标准Exe工程。
    2.给窗体添加一个DataGrid控件。如果DataGrid控件不在“工具箱”中,则在“工程”菜单中单击“部件”,
再单击“MicrosoftDataGridControl”,然后单击“确定”。
    3.在“工程”菜单中,单击“引用”。在“引用”对话框中,单击“MicrosoftActiveXDataObjects2.0Library”。
    4.在“工程”菜单中,单击“添加类模块”来给工程添加一个数据类模块。
    5.在“工程资源管理器”窗口中,单击并选定“类”图标,并按F4键显示“属性”窗口。
    6.在“属性”窗口中,将类的名称更改为NamesData。
    7.在“属性”窗口中,单击“DataSourceBehavior”并将该属性更改为vbDataSource。
    8.在该类模块的Declarations部分,创建一个ADODBRecordset变量,如下所示:
    OptionExplicit
    PrivateWithEventsrsNamesAsADODB.RecordSet
    使用WithEvents关键词来声明该变量,使用户可以对RecordSet对象的事件编程。
    9.在该类的Initialize事件中,添加下述代码:
    PrivateSubClass_Initialize()
      将新的数据成员的名称添加到DataMember集合
      这使其它对象可以看见这些可用的
      DataMembersDataMembers.Add"Names"

      SetrsNames=NewADODB.RecordSet   设置对象变量。
      创建一个具有两个字段的recordset,并打开该recordset。
      第一个记录具有一个整数的数据类型,第二个记录是一个最大可
      达256个字符的字符串。CursorType被设置为OpenStatic
      ——一个可更新的对一组记录的快照。LockType被设置为
      LockOptimistic,以允许对该recordset进行更新。
      WithrsNames
        .Fields.Append"ID",adInteger
        .Fields.Append"Name",adBSTR,255
        .CursorType=adOpenStatic
        .LockType=adLockOptimistic
        .Open
      EndWith

      DimiAsInteger
      Fori=1to10  添加十条记录。
        rsNames.AddNew
        rsNames!ID=i
        rsNames!Name="Name"&i
        rsNames.Update
      Nexti
      rsNames.MoveFirst移到该记录集的开始。
    EndSub
    这部分代码首先创建recordset对象,然后给该对象添加两个字段。代码接着给recordset添加十条记录。
    10.在该类的GetDataMember事件中,添加下述代码:
    PrivateSubClass_GetDataMember(ByValDataMemberAsString,_
    DataAsObject)
       SetData=rsNames
    EndSub
    只要发生该事件——即当该类对象被绑定到一个数据使用者,如DataGrid控件时,代码将返回该recordset对象。
    11.在Form对象的代码模块中,声明一个数据类的对象变量:
    OptionExplicit
    PrivatedatNamesAsNamesData类变量
    12.在Form对象的Load事件的代码中,将DataGrid控件的DataSource设置为该类对象。
     PrivateSubForm_Load()
       创建一个新的NamesData对象
       SetdatNames=NewNamesData
       将这个DataGrid绑定到新的数据源datNames
       SetDataGrid1.DataSource=datNames
     EndSub
    13.按F5键运行该工程。

->


文章整理:站长天空 网址:http://www.z6688.com/
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

文章页数:[1] 


放大字体显示 缩小字体显示 打印文章 推荐给朋友
热门文章
·基于cpld的数字触发电路的设计
·消息队列(Message Queue)简介及其使用-.NET教程,评论及其它
·session_register()出错的解决办法-PHP教程,其它文章
·卫星通信中tcp协议分析改进方法研究
·漫谈Java语言的接口与类型安全-JSP教程,Java技巧及代码
·SQL SERVER2005連接字串中的@3/29-.NET教程,数据库应用
·自创]JCreator安装学习使用方法-数据库专栏,SQL Server
·ASP.NET 数据绑定常用代码-.NET教程,Asp.Net开发
·如何在J2ME的低级界面中轻松实现各种文字的自然分行显示-JSP教程,J2ME开发
·通信设备pac模块式开关电源的原理与维修
最新文章
·photoshop将肖像照片处理为铅笔素描_photoshop教程
·个人网站做联盟广告的几点经验_网赚技巧
·适合与不适合做google adsense的站_网赚技巧
·gg网赚之:怎么样利用e文站轻松月入100刀_网赚技巧
·黄明明归国创业寻觅伙伴:人品好是必要条件_站长访谈
·最普通的7种软文类型_站长访谈
·第九城市ceo朱骏 网海中闯出一片天_站长访谈
·反波访谈:听keso乱弹琴_站长访谈
·人性和互联网_站长心得
·大型网站常用的五种推广方法_站长心得
相关主题
  • datagrid分页,增加首页、最后一页(源码) _asp.net技巧
  • datagridview 的分页处理_asp.net技巧
  • datagrid的多行提交_asp.net技巧
  • datagrid和datalist中commandbutton的问题_asp.net技巧
  • datagrid 的 全选/取消全选 控制(checkbox) _asp.net技巧
  • 西部数码虚拟主机

    友情链接
    CNNIC 西部数码
    万网 自助建站
    虚拟主机 asp空间
    域名注册 域名
    域名申请 主页空间
    论坛空间 网站空间
    国际域名 虚拟空间
    空间租用 DDOS防火墙
    成都主机托管 四川主机托管
    主机租用 服务器租用
    网站目录 自助建站
    虚拟主机 网址大全
    软件下载
    自助链接
    虚拟主机资讯 特价虚拟主机
    版权申明:本站文章均来自网络,如有侵权,请联系我们,我们收到后立即删除,谢谢!
    关于我们:站长天空:专业提供最新的站长资讯、在线教程、虚拟主机权威评测、虚拟主机性能对比、网站制作教程,开发教程,站长工具。包括网页制作教程、冲浪宝典、编程参考、操作系统、软件教学、行业动态等。
    特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有。
    发表评论 打印  刷新     关闭