樹檢視(TreeView)控制元件用於顯示與Windows資源管理器左窗格中檔案和檔案夾的顯示方式類似的專案分層表示。每個節點可能包含一個或多個子節點。參見如下控制元件檢視 -
從工具箱中點選一個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控制元件的一些常用方法:
編號 | 方法 | 描述 |
---|---|---|
1 | CollapseAll |
折疊樹檢視控制元件中的所有節點,包括所有子節點。 |
2 | ExpandAll |
展開所有節點。 |
3 | GetNodeAt |
獲取指定位置的節點。 |
4 | GetNodeCount |
獲取樹節點的數量。 |
5 | Sort |
排序樹檢視控制元件中的所有專案。 |
6 | ToString |
返回一個包含控制元件名稱的字串。 |
以下是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
類表示TreeView
的一個節點。 TreeView
控制元件中的每個節點都是TreeNode
類的一個物件。為了能夠使用TreeView
控制元件,需要檢視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
類的一些常用方法:
編號 | 方法 | 描述 |
---|---|---|
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 = "tw511.com"
End Sub
Private Sub TreeView1_AfterSelect(sender As Object, e As TreeViewEventArgs) Handles TreeView1.AfterSelect
End Sub
End Class
當上面的程式碼執行並使用Microsoft Visual Studio工具列上的「開始」按鈕執行時,它將顯示以下視窗:
可以展開節點來檢視每個子節點,如下圖所示: