一、DataGrid控件
'添加部件"Microsoft
DataGrid能绑定ADODC控件,支持数据库对象ADO。
二、MSFlexGrid控件
'添加部件"Microsoft
MSFlexgrid能绑定DATA控件,支持数据库对象DAO。
绑定DATA控件支持97数据库,不支持2000以上版本数据库
三、MSHFlexGrid控件
'添加部件"Microsoft Hierarchical
FlexGrid Control
6.0
MSHFlexGrid能绑定ADODC控件,支持数据库对象ADO。
MSHFlexGrid控件与MSHFlexGrid控件属性与方法基本相同。但会出现显示长小数位。
四、以下网上的说法:
DBGrid和另外两个控件最大的区别在于DBGrid允许用户修改数据,而另外两个不允许。如果你要用户修改数据,你应该DBGrid。如果只是显示数据,应该使用MSFlexGrid、MSHFlexGrid,这两个控件显示的选项更多,更好看。而MSFlexGrid和MSHFlexGrid之间的区别,主要是后者支持ADO的层次显示。如果你不使用ADO,可以考虑MSFlexGrid,否则建议使用MSHFlexGrid。
最大的区别在于datagrid能绑定记录集,msflexgrid不能。而mshflexgrid能绑定,所以我一般不用msflexgrid,因为mshflexgrid感觉已包含了msflexgrid的功能,而datagrid与mshflexgrid的区别在于:datagrid能直接在网格输入数据,保存更新等,mshflexgrid只能加多一个textbox才能输入,不过mshflexgrid能合并和设置单元格的颜色这是我最喜欢它之处。
最大的区别在于datagrid、mshflexgrid能绑定记录集,msflexgrid不能。
而datagrid与mshflexgrid的区别在于:
MSFlexGrid和MSHFlexGrid之间的区别:
DataGrid、MSFlexGrid、MSHFlexGrid控件刷新问题请问这几种控件是不是都能实现数据库实时刷新,就我改变数据库的内容,可以立即体现出来。 1、推荐解决方案 DataGrid、MSHFlexGrid如果数据绑定了,可以实现实时刷新,配合语句 如: Adodc1.Refresh DataGrid.Refresh MSFlexGrid就要麻烦点,因不能数据绑定,需要清空后重新代码插入记录 2、其他解决方案 都可以。在你改变了数据库的内容的,可以在Data控件、ADODC控件上使用Refresh方法来重新打开数据库,这样就可以实时刷新网络控件。 datagrid与mshflexgrid可以与ADODC控件在设计时绑定,也可以动态绑定。
动态绑定的一般这样: ADODC1.Refresh set
datagrid1.datasource=ADODC1'这是重新绑定,也就等于刷了datagrid set MSHFlexGrid.datasource=ADODC1'同上
在设计时绑定的只要执行ADODC1.Refresh就可以了 msflexgrid可以与data控件在设计时绑定,不能动态绑定。 data1.Refresh'运行时修改了数据库,只要重新打开数据库,就可以更新msflexgrid 不需要重新打开数据库。 更新后,使用绑定的记录集 Requery 方法即可。
例如: ADODC1.Recordset.Requery 或
rs.Requery 都可以使被绑定的控件刷新。 3、其他建议 建议不要用adodc绑定的方式,使用记录集.方法: Set DataGrid1.DataSource =
rs rs.Requery |
|