VB.Net树视图(TreeView)

树视图(TreeView)控件用于显示与Windows资源管理器左窗格中文件和文件夹的显示方式类似的项目分层表示。每个节点可能包含一个或多个子节点。参见如下控件视图 -

从工具箱中点击一个TreeView控件,并把它放在窗体上。

TreeView控件的属性

以下是TreeView控件的一些常用属性:

编号 属性 描述
1 BackColor 获取或设置控件的背景颜色。
2 BackgroundImage 获取或设置TreeView控件的背景图像。
3 BackgroundImageLayout 获取或设置TreeView控件的背景图像的布局。
4 BorderStyle 获取或设置树视图控件的边框样式。
5 CheckBoxes 获取或设置一个值,该值指示复选框是否显示在树视图控件的树节点旁边。
6 DataBindings 获取控件的数据绑定。
7 Font 获取或设置控件显示的文本的字体。
8 FontHeight 获取或设置控件的字体高度。
9 ForeColor 此控件的当前前景色,即控件用于绘制其文本的颜色。
10 ItemHeight 获取或设置树视图控件中每个树节点的高度。
11 Nodes 获取分配给树视图控件的树节点的集合。
12 PathSeparator 获取或设置树节点路径使用的分隔符字符串。
13 RightToLeftLayout 获取或设置一个值,该值指示TreeView是否应从右向左布局。
14 Scrollable 获取或设置一个值,该值指示树视图控件是否在需要时显示滚动条。
15 SelectedImageIndex 获取或设置选择树节点时显示的图像的图像列表索引值。
16 SelectedImageKey 获取或设置TreeNode处于选定状态时显示的默认图像的关键字。
17 SelectedNode 获取或设置树视图控件中当前选定的树节点。
18 ShowLines 获取或设置一个值,该值指示是否在树视图控件中的树节点之间绘制线条。
19 ShowNodeToolTips 获取或设置一个值,指示当鼠标指针悬停在TreeNode上时显示工具提示。
20 ShowPlusMinus 获取或设置一个值,该值指示是否在包含子树节点的树节点旁边显示加号(+)和减号(-)按钮。
21 ShowRootLines 获取或设置一个值,该值指示是否在位于树视图根目录的树节点之间绘制线。
22 Sorted 获取或设置一个值,该值指示树视图中的树节点是否已排序。
23 StateImageList 获取或设置用于指示TreeView及其节点状态的图像列表。
24 Text 获取或设置TreeView的文本。
25 TopNode 获取或设置树视图控件中的第一个完全可见的树节点。
26 TreeViewNodeSorter 获取或设置IComparer的实现,以执行自定义类型的TreeView节点。
27 VisibleCount 获取树视图控件中可以完全可见的树节点的数量。

TreeView控件的方法

以下是TreeView控件的一些常用方法:

编号 方法 描述
1 CollapseAll 折叠树视图控件中的所有节点,包括所有子节点。
2 ExpandAll 展开所有节点。
3 GetNodeAt 获取指定位置的节点。
4 GetNodeCount 获取树节点的数量。
5 Sort 排序树视图控件中的所有项目。
6 ToString 返回一个包含控件名称的字符串。

TreeView控件的事件

以下是TreeView控件的一些常用事件:

编号 事件 描述
1 AfterCheck 在树节点复选框被选中后发生。
2 AfterCollapse 在树节点折叠后发生
3 AfterExpand 在树节点展开后发生。
4 AfterSelect 在选择树节点后发生。
5 BeforeCheck 在选中树节点复选框之前发生。
6 BeforeCollapse 在树节点折叠之前发生。
7 BeforeExpand 在树节点展开之前发生。
8 BeforeLabelEdit 在编辑树节点标签文本之前发生。
9 BeforeSelect 在选择树节点之前发生。
10 ItemDrag 在用户开始拖动节点时发生。
11 NodeMouseClick 当用户用鼠标单击TreeNode时发生。
12 NodeMouseDoubleClick 在用户用鼠标双击TreeNode时发生。
13 NodeMouseHover 当鼠标悬停在TreeNode上时发生。
14 PaddingChanged Padding属性的值更改时发生。
15 Paint 在绘制TreeView时发生。
16 RightToLeftLayoutChanged RightToLeftLayout属性的值更改时发生。
17 TextChanged Text属性更改时发生。

TreeNode类

TreeNode类表示TreeView的一个节点。 TreeView控件中的每个节点都是TreeNode类的一个对象。为了能够使用TreeView控件,需要查看TreeNode类的一些常用属性和方法。

TreeNode类的属性

以下是TreeNode类的一些常用属性:

编号 属性 描述
1 BackColor 获取或设置树节点的背景颜色。
2 Checked 获取或设置一个值,该值指示树节点是否处于选中状态。
3 ContextMenu 获取与此树节点关联的快捷菜单。
4 ContextMenuStrip 获取或设置与此树节点关联的快捷菜单。
5 FirstNode 获取树节点集合中的第一个子树节点。
6 FullPath 获取从根树节点到当前树节点的路径。
7 Index 获取树节点集合中树节点的位置。
8 IsEditing 获取一个值,该值指示树节点是否处于可编辑状态。
9 IsExpanded 获取一个值,该值指示树节点是否处于展开状态。
10 IsSelected 获取指示树节点是否处于选定状态的值。
11 IsVisible 获取一个值,该值指示树节点是可见还是部分可见。
12 LastNode 获取最后一个子树节点。
13 Level 获取TreeView控件中树节点的从零开始的深度。
14 Name 获取或设置树节点的名称。
15 NextNode 获取下一个兄弟树节点。
16 Nodes 获取分配给当前树节点的TreeNode对象的集合。
17 Parent 获取当前树节点的父树节点。
18 PrevNode 获取之前的兄弟树节点。
19 PrevVisibleNode 获取上一个可见的树节点。
20 Tag 获取或设置包含有关树节点数据的对象。
21 Text 获取或设置显示在树节点标签中的文本。
22 ToolTipText 获取或设置鼠标指针悬停在TreeNode上时出现的文本。
23 TreeView 获取树节点分配给的父树视图。

TreeNode类的方法

以下是TreeNode类的一些常用方法:

编号 方法 描述
1 Collapse 折叠树节点。
2 Expand 展开树节点。
3 ExpandAll 展开所有子树节点
4 GetNodeCount 返回子树节点的数量。
5 Remove 从树视图控件中移除当前的树节点。
6 Toggle 将树节点切换到展开或折叠状态。
7 ToString 返回表示当前对象的字符串。

示例

在这个例子中,在运行时创建一个树形视图。双击窗体并将下面的代码放在打开的窗口中。

Public Class Form1
    Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
        ' create a new TreeView '
        ' Dim TreeView1 As TreeView '
        ' TreeView1 = New TreeView() '
        TreeView1.Location = New Point(10, 10)
        TreeView1.Size = New Size(180, 250)
        Me.Controls.Add(TreeView1)
        TreeView1.Nodes.Clear()
        'Creating the root node '
        Dim root = New TreeNode("Application")
        TreeView1.Nodes.Add(root)
        TreeView1.Nodes(0).Nodes.Add(New TreeNode("Project 1"))
        'Creating child nodes under the first child
        For loopindex As Integer = 1 To 4
            TreeView1.Nodes(0).Nodes(0).Nodes.Add(New _
                TreeNode("Sub Project" & Str(loopindex)))
        Next loopindex
        ' creating child nodes under the root '
        TreeView1.Nodes(0).Nodes.Add(New TreeNode("Project 6"))
        'creating child nodes under the created child node
        For loopindex As Integer = 1 To 3
            TreeView1.Nodes(0).Nodes(1).Nodes.Add(New _
                TreeNode("Project File" & Str(loopindex)))
        Next loopindex
        ' Set the caption bar text of the form.  '
        Me.Text = "xuhuhu.com"
    End Sub

    Private Sub TreeView1_AfterSelect(sender As Object, e As TreeViewEventArgs) Handles TreeView1.AfterSelect

    End Sub
End Class

当上面的代码执行并使用Microsoft Visual Studio工具栏上的“开始”按钮运行时,它将显示以下窗口:

可以展开节点来查看每个子节点,如下图所示:


上一篇: VB.Net基本控件 下一篇: VB.Net对话框