1
'常用控件介绍 — TreeView和ListView
2![]()
3
Imports System.IO
4
Public Class Form1
5
Inherits System.Windows.Forms.Form
6![]()
7
Windows 窗体设计器生成的代码
121![]()
122
Private Sub TreeView1_AfterSelect(ByVal sender As Object, ByVal e As System.Windows.Forms.TreeViewEventArgs) Handles TreeView1.AfterSelect
123
If e.Node.Text = "我的电脑" Then
124
'列举驱动器
125
EnumDriver(e.Node)
126
Else
127
'列举子文件夹。
128
EnumDir(e.Node)
129
End If
130
End Sub
131![]()
132
'列举驱动器
133
Private Sub EnumDriver(ByVal node As TreeNode)
134
Dim drv As String
135
If node.Nodes.Count = 0 Then
136
For Each drv In Directory.GetLogicalDrives
137
TreeView1.SelectedNode = node
138
Dim tmpNode As New TreeNode
139
tmpNode.Text = drv.Substring(0, drv.Length - 1)
140
tmpNode.Tag = drv
141
tmpNode.ImageIndex = 1
142
tmpNode.SelectedImageIndex = 1
143![]()
144
TreeView1.SelectedNode.Nodes.Add(tmpNode)
145
TreeView1.SelectedNode.Nodes(TreeView1.SelectedNode.Nodes.Count - 1).EnsureVisible()
146
Next
147
End If
148![]()
149
End Sub
150![]()
151
'列举子文件夹名称
152
Private Sub EnumDir(ByVal node As TreeNode)
153
TreeView1.SelectedNode = node
154
Dim DirectoryPath As String = node.Tag.ToString()
155
If node.Nodes.Count = 0 Then
156
If DirectoryPath.Substring(DirectoryPath.Length - 1) <> "\" Then
157
DirectoryPath += "\"
158
End If
159![]()
160
Try
161
Dim Dir As String
162
For Each Dir In Directory.GetDirectories(DirectoryPath)
163
Dim tmpNode As New TreeNode
164
tmpNode.Text = Dir.Substring(Dir.LastIndexOf("\") + 1)
165
tmpNode.Tag() = Dir
166
tmpNode.ImageIndex = 2
167
tmpNode.SelectedImageIndex = 3
168
TreeView1.SelectedNode.Nodes.Add(tmpNode)
169
TreeView1.SelectedNode.Nodes(TreeView1.SelectedNode.Nodes.Count - 1).EnsureVisible()
170
Next
171
Catch ex As Exception
172
End Try
173
End If
174
EnumFile(node) '列举完文件夹之后再列表显示这个文件夹中的文件。
175
End Sub
176![]()
177
'列举文件夹下面的文件名称
178
Private Sub EnumFile(ByVal node As TreeNode)
179
Dim DirectoryPath As String = node.Tag.ToString()
180
If DirectoryPath.Substring(DirectoryPath.Length - 1) <> "\" Then
181
DirectoryPath += "\"
182
End If
183
Try
184
ListView1.Items.Clear()
185
Dim tmpFile As String
186
Dim lvItem As ListViewItem
187
For Each tmpFile In Directory.GetFiles(DirectoryPath)
188
lvItem = New ListViewItem(Path.GetFileName(tmpFile)) '文件名称
189
lvItem.SubItems.Add(File.GetLastAccessTime(tmpFile)) '最后访问时间
190
ListView1.Items.Add(lvItem) '将这个项目加载到ListView中
191
Next
192
Catch ex As Exception
193
End Try
194
End Sub
195![]()
196
End Class
197![]()
'常用控件介绍 — TreeView和ListView2

3
Imports System.IO4
Public Class Form15
Inherits System.Windows.Forms.Form6

7
Windows 窗体设计器生成的代码121

122
Private Sub TreeView1_AfterSelect(ByVal sender As Object, ByVal e As System.Windows.Forms.TreeViewEventArgs) Handles TreeView1.AfterSelect123
If e.Node.Text = "我的电脑" Then124
'列举驱动器125
EnumDriver(e.Node)126
Else127
'列举子文件夹。128
EnumDir(e.Node)129
End If130
End Sub131

132
'列举驱动器133
Private Sub EnumDriver(ByVal node As TreeNode)134
Dim drv As String135
If node.Nodes.Count = 0 Then136
For Each drv In Directory.GetLogicalDrives137
TreeView1.SelectedNode = node138
Dim tmpNode As New TreeNode139
tmpNode.Text = drv.Substring(0, drv.Length - 1)140
tmpNode.Tag = drv141
tmpNode.ImageIndex = 1142
tmpNode.SelectedImageIndex = 1143

144
TreeView1.SelectedNode.Nodes.Add(tmpNode)145
TreeView1.SelectedNode.Nodes(TreeView1.SelectedNode.Nodes.Count - 1).EnsureVisible()146
Next147
End If148

149
End Sub150

151
'列举子文件夹名称152
Private Sub EnumDir(ByVal node As TreeNode)153
TreeView1.SelectedNode = node154
Dim DirectoryPath As String = node.Tag.ToString()155
If node.Nodes.Count = 0 Then156
If DirectoryPath.Substring(DirectoryPath.Length - 1) <> "\" Then157
DirectoryPath += "\"158
End If159

160
Try161
Dim Dir As String162
For Each Dir In Directory.GetDirectories(DirectoryPath)163
Dim tmpNode As New TreeNode164
tmpNode.Text = Dir.Substring(Dir.LastIndexOf("\") + 1)165
tmpNode.Tag() = Dir166
tmpNode.ImageIndex = 2167
tmpNode.SelectedImageIndex = 3168
TreeView1.SelectedNode.Nodes.Add(tmpNode)169
TreeView1.SelectedNode.Nodes(TreeView1.SelectedNode.Nodes.Count - 1).EnsureVisible()170
Next171
Catch ex As Exception172
End Try173
End If174
EnumFile(node) '列举完文件夹之后再列表显示这个文件夹中的文件。175
End Sub176

177
'列举文件夹下面的文件名称178
Private Sub EnumFile(ByVal node As TreeNode)179
Dim DirectoryPath As String = node.Tag.ToString()180
If DirectoryPath.Substring(DirectoryPath.Length - 1) <> "\" Then181
DirectoryPath += "\"182
End If183
Try184
ListView1.Items.Clear()185
Dim tmpFile As String186
Dim lvItem As ListViewItem187
For Each tmpFile In Directory.GetFiles(DirectoryPath)188
lvItem = New ListViewItem(Path.GetFileName(tmpFile)) '文件名称189
lvItem.SubItems.Add(File.GetLastAccessTime(tmpFile)) '最后访问时间190
ListView1.Items.Add(lvItem) '将这个项目加载到ListView中191
Next192
Catch ex As Exception193
End Try194
End Sub195

196
End Class197


浙公网安备 33010602011771号