VBGood网站全文搜索 Google

搜索VBGood全站网页(全文搜索)
首页 - 经验之谈 - SharpGrid控件简介
发表评论(0)作者:不详, 平台:VB6.0+Win98, 阅读:13596, 日期:2002-06-08
SharpGrid控件简介

作者: BUILDER.COM
Tuesday, April 30 2002 11:03 AM



  
我曾经想用VB语言给9岁大的儿子编写一个西班牙语拼词游戏,结果很气恼地发现控件库里的栅格(grid)控件没有了……实际上整个控件库都不在了。原来,前不久我神经兮兮地给我家的电脑做了磁盘格式化却没有做必要的备份。没办法我只好从网上找了种ActiveX栅格控件,这种栅格控件支持格内自由编辑而且是完全免费的。

我在Download.com网站上晃荡了好久,然后就遇到了名为BeeGrid的控件,从名字上看可能是我所需要的,于是我下载了其无限使用的免费版。令我感到惊奇的是,BeeGrid因为被Data Dynamics购买了所以现在被重新命名为#Grid(SharpGrid),其无限使用版也随之变成了30天试用版。但我得承认,SharpGrid确实是到目前为止我所见过的最棒的栅格控件。



--------------------------------------------------------------------------------
Data Dynamics #Grid (SharpGrid)
层次型ActiveX Grid控件
优点:易于使用,性能卓越,几乎支持全部数据绑定模式。
缺点:预发布版有点不稳定。Data Dynamics公司承诺发布版将解决这一问题。
价格:249美元,BeeGrid用户只需要99美元即可升级,另外还有免费测试版


--------------------------------------------------------------------------------
我刚才已经提到了,我寻求的栅格控件得支持格内编辑而且具有非绑定模式。#Grid正好满足我的这些要求。该控件内部的对象模型设计得相当完善,大大小小有30种左右的对象何集合可以处理。在非绑定模式下,#Grid的使用是非常简单的。

当然,#Grid才不止非绑定模式呢。它还可以运行在其他若干种模式下:绑定OLE-DB或者Icursor数据源,或者采用“Virtual”模式。该控件的virtual模式把控件的布局、格式化和数据处理等操作全部交给了程序员,后者即可采用#Grid的对象模式或者事件处理机制组装栅格。

在OLE-DB绑定模式下,#Grid能够从设计时设定的数据源获取列信息,自动地配置自身来显示所有的可用列,甚至连二进制大型对象列(Binary Large Object)也是自动配置的。在绑定模式下栅格具有响应性,可以处理好几百行数据。


典型特性

#Grid引入了在其所有数据模式下都可以支持的优良特性。其Outlook风格的特性分组可以接受程序员的控制或者用标准的拖放条来完成。分层可以采用树状风格同时还支持可计算页眉和页教。在以上两种场合下,子列完全可以通过#Grid的对象模型进行编程操作。

这种栅格的过滤特性极其稳固,只是在最初刚用到的时候有点令人费解。你可以构建单独的过滤器对象表示你需要完成的操作,然后把它们加入到栅格控件的过滤器集合中,然后你尽可通过方法调用的方式应用过滤器。该系统的灵巧之处是你不必隐藏过滤记录。如果你愿意,你可以用特定的格式化风格将其同非过滤操作区分开来。

#Grid还具有一些极“酷”的新特性,如图A所示的就是其alpha渲染背景。

图A



#Grid支持alpha渲染背景


很有意思,alpha渲染好看之余却几乎没有在性能上带来什么损失。另外,你还可以采用一些强大而且灵活的定制绘画模式来中断、重载栅格的绘图循环。

以其报表组件著称的Data Dynamics给这种栅格控件添加了某些非常出色的新报表特性。新型的Excel格式的导出、打印以及打印预览控件都成为了栅格控件的新功能。

不管你需要的只是基本的栅格控件还是要用具有超级功能的栅格控件来显示数据,#Grid都完全值得一用。