-或者-
在 Visual Basic 工具箱上,双击 MSHFlexGrid 控件,将其添加到窗体上。
将数据绑定到 Hierarchical FlexGrid
在开始使用它的功能之前,必须先将数据绑定到 Hierarchical FlexGrid。要将数据绑定到控件,可以使用 Visual Basic 新的 Data Binding Manager,或者通过编程实现。
在将 Hierarchical FlexGrid 绑定到数据源之后,Hierarchical FlexGrid 在设计时屏幕显示是一个空白列和一个空白行。字段和带区信息不是自动提取的(要获得此类信息,请参阅取得结构信息)。如果 Hierarchical FlexGrid 在没有字段和带区信息的情况下运行,那么在显示数据的时候将使用缺省的属性设置。就是说,如果 Hierarchical FlexGrid 被绑定到一个分层结构的Command,那么显示出的数据带区将是水平排列的,每个带区中包含一列,分别对应于 Recordset 中的每一个字段。
绑定到数据源的 Hierarchical FlexGrid
使用 Visual Basic Data Binding Manager 将数据绑定到Hierarchical FlexGrid
本节说明如何使用 Visual Basic Data Binding Manager 将数据绑定到Hierarchical FlexGrid。Data Binding Manager 提供了一种便于进行数据绑定的用户界面。 使用 Visual Basic Data Binding Manager 设置 DataSource
1. 为 Hierarchical FlexGrid 创建数据源。数据源可以是 DataEnvironment 对象或者 ActiveXData Control,或者是一种新的 Visual Basic 功能。在本例中,将数据源创建为 DataEnvironment 对象。
2. 在 Visual Basic 工具箱上,单击 MSHFlexGrid 控件,然后将其拖到一个 Visual Basic 窗体上。 -或者-
在 Visual Basic 工具箱上,双击 MSHFlexGrid 控件将其拖到一个 VisualBasic 窗体上。 3. 在 Visual Basic “属性”窗口中,将 DataSource 属性设置为包含了希望被绑定到 Hierarchical FlexGrid 的 Command 对象的 DataEnvironment对象。
警告 如果 DataSource 被重新设置,Hierarchical FlexGrid 单元格中的所有用户定义的、修改过的数据都将被丢失。4. 在 Visual Basic “属性”窗口中,将 DataMember 属性设置为 DataEnvironment 中的一个 Command 对象。如果希望在 HierarchicalFlexGrid 中查看分层结构的数据,那么必须指定 Command 分层结构中最顶部的父 Command 对象作为 DataMember。 5. 要查看 Hierarchical FlexGrid 中的数据,请在“运行”菜单中选择“开始”。
-或者- 按下 F5 键。
以编程方式将数据绑定到 Hierarchical FlexGrid
本节描述如何以编程方式将数据绑定到 Hierarchical FlexGrid。要以编程方式设置 DataSource
1. 在 Visual Basic 工具箱中,双击 MSHFlexGrid 控件,将其放在一个Visual Basic 窗体上。 2. 右击该 Hierarchical FlexGrid,然后从快捷菜单中选择“查看代码”。出现“代码编辑器”窗口。
3. 在 Form_Load 事件中,添加代码来创建一个 ADO Recordset 并将其赋予 Hierarchical FlexGrid。该代码将在下面的分步骤中提供。
注意 要以编程方式设置数据源,工程中必须要有指向 MicrosoftActiveX Data Objects 的引用:在“工程”菜单中,选择“引用”,然后选择“Microsoft ActiveX Data Objects 2.0 Library”。
插入下列代码,创建一个 ADO Connection 和 Recordset,请根据实际情况替换其中的注释(例如,将
' 你需要将
Cn.ConnectionString = \
' 使用下列代码用于 SHAPE Commands Cn.Provider = \ Cn.CursorLocation = adUseNone
' 第二种办法,对于 SQL Commands 可使用下列代码 Cn.CursorLocation = adUseNone Cn.Open
' 需要为上面创建的 Connection 的 Recordsets 指定 ' 有效的数据源
Rs.Source = \ ' 现在将 Command 与 Connection 关联 ' 起来并执行它们。
Set Rs.ActiveConnection = Cn Rs.Open
插入下面的代码,将 Rs 中打开的 Recordset 赋予 HierarchicalFlexGrid: Set MSHFlexGrid1.DataSource = Rs
4. 要查看 Hierarchical FlexGrid 中的数据,请在“运行”菜单中选择“开始”。
-或者- 按下 F5 键
Hierarchical FlexGrid 与分层结构的 Recordset
将 Hierarchical FlexGrid 和一个分层结构的 Recordset 结合起来可以查看关系类型的信息。在将这些信息显示给用户的时候,可以确保原始数据的安全,使之不被用户修改;也可以通过将文本框添加到窗体defForm来增加Hierarchical FlexGrid 的单元格编辑功能。当 Hierarchical FlexGrid 被绑定到分层结构的 Recordsets 上时,可以使用带区来显示分组的和相关的Recordsets。
注意 在执行本步骤之前,必须先将数据绑定到 Hierarchical FlexGrid。为此,请参阅将数据绑定到分层结构的 FlexGrid。
要使用带区在 Hierarchical FlexGrid 中显示分层结构的 Recordsets
1. 右击 Hierarchical FlexGrid,然后从快捷菜单中选择“属性”。出现Hierarchical FlexGrid 的“属性页”对话框。
2. 在“通用”选项卡中,设置“带区显示”。关于每一种带区显示的描述,请参阅带区的格式设置。
3. 在“带区”选项卡中,从“带区”框中选择一个带区。这里列出的可用带区是根据 Command 分层结构中的Recordsets确定的。对于每一个带区,生成Recordset的Command 的名称被显示在括号中。
4. 在必要的时候修改每个带区的属性。与此有关的详细信息,请参阅带区的格式设置。 5. 单击“确定”,将带区属性应用于Hierarchical FlexGrid 并关闭“属性页”对话框。
带区的格式设置
在 Hierarchical FlexGrid 中,可以利用带区格式设置功能来指定某个Recordset 的显示选项。ADO 分层结构 Recordset 中的每一个 Recordset 都将被创建一个带区。例如,如果将一个 Hierarchical FlexGrid 绑定到一个包含 Customers 和 Orders 的 ADO 分层结构,那么 Hierarchical FlexGrid 在开始的时候将包含两个带区。
通过设置带区的格式,可以定制 Hierarchical FlexGrid 的屏幕外观。这样就可以突出显示多个带区中的重要信息。允许进行格式设置的带区元素包括:列标头、网格线、颜色和缩进。 如果绑定到非分层结构的 Recordset,那么控件中将只有一个带区,而且该带区被称为 Band 0。没有其他带区,因为带区以 Command 分层结构中的Recordsets 为基础。
改变带区的布局
通过改变带区的布局,带区内的字段显示方式将得以改变。在缺省情况下,带区的诸字段将沿水平方向排列,同标准的网格一样。 水平方式的带区显示
垂直显示方式将导致带区在高度方向上进行扩展,以便能够在带区中容纳所有的字段。Hierarchical FlexGrid 中显示的其他带区也将被扩展,确保所有的带区的高度相同。 垂直方式的带区显示
要设置带区的布局
1. 右击 Hierarchical FlexGrid,然后从快捷菜单中选择“属性”。出现Hierarchical FlexGrid 的“属性页”对话框。
2. 在“通用”选项卡中设置“带区显示”。
3. 单击“确定”,将带区的显示属性应用于 Hierarchical FlexGrid 并关闭“属性页”对话框。
显示列标头
如果带区以水平方式显示,那么可以为 Hierarchical FlexGrid 设置标头。标头直接显示在带区之上,并且为 Hierarchical FlexGrid 中的每一个带区分别显示一次。如果在 Hierarchical FlexGrid 的顶部和左边只需要为每个带区显示一组标头,请使用固定单元格取代标头。关于固定单元格的信息,请参阅“自定义固定外观” (在主题自定义 Hierarchical FlexGrid 区域中)。 1. 右击 Hierarchical FlexGrid,然后从快捷菜单中选择“实现”。出现Hierarchical
FlexGrid 的“属性页”对话框。
2. 在“带区”选项卡中,选择“列标头”,然后在”TextStyleHeader”列表框中选择列标头样式。
3. 单击“确定”,将列标头属性应用于 Hierarchical FlexGrid 并关闭“属性页”对话框。 水平的列标头
改变列的顺序
Hierarchical FlexGrid 带区中的各列的顺序是可以改变的。 要改变带区内的列顺序 1. 选定需要移动的列。
2. 使用上下箭头键将列移动到带区内的新位置上。
修改颜色和网格线
设置带区的颜色和网格线信息的方法有两种:全体方式和个别方式。修改颜色和网格线的目的通常是为了突出地显示 Hierarchical FlexGrid 内的某些重要信息,便于用户阅读数据。另外,还可以指定带区内的单元格之间是否需要显示网格线。使用下面的过程可以修改 Hierarchical FlexGrid 内所有带区的颜色和网格线。
注意 如果需要改变单个带区的颜色信息,必须使用BackColorBand属性以编程方式进行改变。 要改变全局的颜色和网格线
1. 右击 Hierarchical FlexGrid,然后从快捷菜单中选择“属性”。出现Hierarchical FlexGrid 的“属性页”对话框。
2. 在“带区”选项卡中,从“网格线”框中选择一种样式,然后单击“应用”。对于选定的带区,该样式确定了 Hierarchical FlexGrid 中位于标准的填充文本区域之间的线条的类型。 3. 在“样式”选项卡中,从“固定网格线”中选择一种样式。然后从“非置入网格线”中选择一种样式并单击“应用”。这些样式确定了 HierarchicalFlexGrid 中位于固定的与未填充区域之间的线条的类型。
4. 在“颜色”选项卡中,为每一种网格线属性指定一种颜色。为此,请首先选择一个“颜色设置”。然后选择要修改的属性(例如 GridColor),从“调色板”中选择一种颜色,最后单击“应用”。对于需要改变的每一条Hierarchical FlexGrid 网格线都需要重复该操作。
VB控件教程大全
![](/skin/haowen/images/icon_star.png)
![](/skin/haowen/images/icon_star.png)
![](/skin/haowen/images/icon_star.png)
![](/skin/haowen/images/icon_star.png)