VB.net TreeView 读取系统文件名

Imports System.IO
Imports System.Data
'Imports System.Data.Linq
'Imports System.Data.Linq.Mapping
Imports System.Windows.Forms

 

Public Class Form1

Private Sub TreeView1_AfterSelect(ByVal sender As System.Object, ByVal e As System.Windows.Forms.TreeViewEventArgs) Handles TreeView1.AfterSelect
If Not TreeView1.SelectedNode Is Nothing Then
 MessageBox.Show(TreeView1.SelectedNode.Text)
End If

End Sub

Public Sub AddDirectory(ByVal strFatherPath As String, ByVal strPath As String, ByVal nodeFather As TreeNode)

  Dim iDir As IO.Directory

  Dim iDirInfo As IO.DirectoryInfo

  Dim i As Integer

  Dim node As New TreeNode

  '先添加本目录,从文件夹路径分析出文件夹名称

  node.Text = Strings.Replace(strPath, strFatherPath & "\", "", , 1)

  '为单个节点指定节点未被选中时显示的图标

  node.ImageIndex = 1

  '为单个节点指定节点被选中时显示的图标

  node.SelectedImageIndex = 2

  nodeFather.Nodes.Add(node)

  Application.DoEvents()

  Try

  Dim str() As String = IO.Directory.GetDirectories(strPath)

  '遍历该目录的子文件夹

  For i = 0 To str.GetUpperBound(0)

  AddDirectory(strPath, str(i), node)

  Next

  Catch ex As Exception

  Debug.WriteLine(ex.Message)

  End Try

  node = Nothing

  iDir = Nothing

  End Sub

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

  Dim iDir As IO.Directory

  Dim node As New TreeNode

  '先把C盘添加到树中

  TreeView1.Nodes.Clear()

  node.ImageIndex = 0

  node.Text = "PC_Code"

  node.SelectedImageIndex = -1

  TreeView1.Nodes.Add(node)

  Dim i As Integer

  '获取C:盘根目录下的文件夹

  Dim str() As String = IO.Directory.GetDirectories("F:\PC_Code")

  For i = 0 To str.GetUpperBound(0)

'调用遍历过程

AddDirectory("F:\PC_Code:", str(i), node)

  Next

  node = Nothing

  iDir = Nothing

  End Sub

    Function GetFiles(ByVal MyDir As String) As IEnumerable(Of System.IO.FileInfo)

Dim Coll As System.Collections.ObjectModel.ReadOnlyCollection(Of String)
  Coll = My.Computer.FileSystem.GetFiles("F:\PC_Code\1")
Dim filename As String
  For Each filename In Coll
  Dim node As New TreeNode
  node.ImageIndex = 1
Dim arr As String() = filename.Split("\")

 node.Text = arr(arr.Length - 1)

  TreeView1.Nodes.Add(node)

  Next

        If (Not System.IO.Directory.Exists(MyDir)) Then
            Throw New System.IO.DirectoryNotFoundException()
        End If
        Dim MyFileNames As String()
        Dim MyFiles As List(Of System.IO.FileInfo) = New List(Of System.IO.FileInfo)()

        MyFileNames = System.IO.Directory.GetFiles(MyDir)
        For Each MyName As String In MyFileNames
            MyFiles.Add(New System.IO.FileInfo(MyName))
        Next
        Return MyFiles
    End Function

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
        Dim MyDir As String = "F:\PC_Code\1"
Dim list As List(Of String) = New List(Of String)
        Dim MyFiles = GetFiles(MyDir)

        Dim MyStartDate As DateTime = Me.dateTimePicker1.Value
        Dim MyEndDate As DateTime = Me.dateTimePicker2.Value

End Sub
End Class

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值