VB 中treeview 控件的使用方法 利用treeview 控件可以获得驱动器下的所有目录和子目录,TreeView 控件最典型的使用就是Windows 资源管理中显示文件夹列表的左边栏,现在我们就模仿它来做一个按树状结构显示指定盘符中所有文件夹的小程序。 一、准备知识: 1、了解 TreeView 控件的基本使用,掌握了如何添加树状结构的数据到TreeView 控件中,相关文章参看这里:vb.net 入门——TreeView 控件的使用 2、了解 ImageList 控件的基本使用。 3、了解vb.net System.IO 命名空间中的Directory 类的一些常用用法,下面我们先了解下本文要用到Directory类的成员 GetDirectories:它用于获取指定目录中子目录的名称。如下代码所示,获取 C:盘下的子目录: Dim dirs As String() = Directory.GetDirectories("c:\") 其结果是我们点开 C 盘后看到的文件夹,如果要获取更深层次的文件夹列表,就要一个一个文件夹循环使用Directory.GetDirectories 方法。 二、窗体布局 在窗体上拖放一个TreeView 控件,一个Button 按钮,一个ImageList 组件 在ImageList 组件中按顺序添加如下三个图标,图标大小设置为 16*16: 图一:需要用到的图标 三:编写代码 首先,我们已经知道,要想获得树状结构的每个层次中的子文件夹,我们必须使用递归过程来完成,下面所示代码所执行的工作是:先把一个已经路径的文件夹添加到树状结构中,然后再遍历它的子文件夹: '添加文件夹 Public Sub AddDirectory(ByVal strFatherPath As String, ByVal strPath As String, ByVal nodeFather As TreeNode) Dim i As Integer Dim node As New TreeNode '先添加本目录,从文件夹路径分析出文件夹名称 node.Tex t = Strings.Replace(strPath, strFatherPath & "\", "", , 1) '为单个节点指定节点未被选中时显示的图标 node.ImageIndex = 1 '为单个节点指定节点被选中时显示的图标 node.SelectedImageIndex = 2 nodeFather.Nodes.Add(node) Application.DoEv ents() Try Dim str() As String = iDir.GetDirectories(strPath) '遍历该目录的子文件夹 For i = 0 To str.GetUpperBou nd(0) AddDirectory (strPath, str(i), node) Nex t Catch ex As Ex ception Debu g.WriteLine(ex .Message) End Try node = Nothing End Su b 然后在按钮的Click 事件中添加代码...