[RESOLVED] [2003] Treeview showing all Subfolders and files
Hello everyone!
How can I make a Treeview which lists all the subfolders inside all subfolders (similar to windows explorer), but with all the subfolders' files inside the treeview?
I do not want to show it in a listview, all the folders and files must be shown in the treeview.
Can anyone help?
# 1 Re: [RESOLVED] [2003] Treeview showing all Subfolders and files
Ok, made some progress. I ended up using the FolderBrowserDialog, then populate the Treeview. This is my codes
Private Sub DisplayTree(ByVal DirTree As String, ByVal stnode As TreeNode)
Dim NameDir As IO.DirectoryInfo
Dim MyNode, MyNode1 As TreeNode
Dim Xtension As String 'File Extensions
'FIrst Folder and File list
If IO.Directory.Exists(DirTree) Then
For Each MyDir As String In IO.Directory.GetDirectories(DirTree)
NameDir = New IO.DirectoryInfo(mydir)
Call AddIcon(NameDir.ToString)
'MyNode = TrFoldList.Nodes.Add(NameDir.Name)
MyNode = stnode.Nodes.Add(NameDir.Name)
MyNode.ImageIndex = iconIn
MyNode.SelectedImageIndex = iconIn
If IO.Directory.Exists(NameDir.ToString) Then
For Each MyDir1 As String In IO.Directory.GetFiles(NameDir.ToString)
NameDir = New IO.DirectoryInfo(MyDir1)
Call AddIcon(NameDir.ToString)
MyNode1 = MyNode.Nodes.Add(NameDir.Name)
MyNode1.Tag = MyDir1
MyNode1.ImageIndex = iconIn
MyNode1.SelectedImageIndex = iconIn
Next
End If
If IO.Directory.Exists(MyDir) Then
Call DisplayTree(MyDir, MyNode)
End If
Next
Dim MyNode2 As TreeNode
For Each MyDir As String In IO.Directory.GetFiles(DirTree)
NameDir = New IO.DirectoryInfo(mydir)
Call AddIcon(NameDir.ToString)
MyNode2 = stnode.Nodes.Add(NameDir.Name)
MyNode2.Tag = MyDir
MyNode2.ImageIndex = iconIn
MyNode2.SelectedImageIndex = iconIn
Next
End If
End Sub
That part id fine now.
Does any one ahve any idea on how to only show files with an xls extension, and not all the files (like the above code produces)?
# 2 Re: [RESOLVED] [2003] Treeview showing all Subfolders and files
How about this Ron :
Private Sub DisplayTree(ByVal DirTree As String, ByVal stnode As TreeNode)
Dim NameDir As IO.DirectoryInfo
Dim MyNode, MyNode1 As TreeNode
Dim Xtension As String 'File Extensions
'FIrst Folder and File list
If IO.Directory.Exists(DirTree) Then
For Each MyDir As String In IO.Directory.GetDirectories(DirTree)
NameDir = New IO.DirectoryInfo(mydir)
Call AddIcon(NameDir.ToString)
'MyNode = TrFoldList.Nodes.Add(NameDir.Name)
MyNode = stnode.Nodes.Add(NameDir.Name)
MyNode.ImageIndex = iconIn
MyNode.SelectedImageIndex = iconIn
If IO.Directory.Exists(NameDir.ToString) Then
For Each MyDir1 As String In IO.Directory.GetFiles(NameDir.ToString)
Xtension = IO.Path.GetExtension(MyDir1) 'Identify File Extension
If Xtension = ".bmp" OrElse Xtension = ".BMP" OrElse Xtension = ".jpg" _
OrElse Xtension = ".JPG" OrElse Xtension = ".jpe" OrElse Xtension = ".JPE" _
OrElse Xtension = ".gif" OrElse Xtension = ".GIF" Then 'Test For Valid File Extensions ( Pictures Only )
NameDir = New IO.DirectoryInfo(MyDir1)
Call AddIcon(NameDir.ToString)
MyNode1 = MyNode.Nodes.Add(NameDir.Name)
MyNode1.Tag = MyDir1
MyNode1.ImageIndex = iconIn
MyNode1.SelectedImageIndex = iconIn
End If
Next
End If
If IO.Directory.Exists(MyDir) Then
Call DisplayTree(MyDir, MyNode)
End If
Next
Dim MyNode2 As TreeNode
For Each MyDir As String In IO.Directory.GetFiles(DirTree)
Xtension = IO.Path.GetExtension(MyDir) 'Identify File Extension
If Xtension = ".bmp" OrElse Xtension = ".BMP" OrElse Xtension = ".jpg" _
OrElse Xtension = ".JPG" OrElse Xtension = ".jpe" OrElse Xtension = ".JPE" _
OrElse Xtension = ".gif" OrElse Xtension = ".GIF" Then 'Test For Valid File Extensions ( Pictures Only )
NameDir = New IO.DirectoryInfo(mydir)
Call AddIcon(NameDir.ToString)
MyNode2 = stnode.Nodes.Add(NameDir.Name)
MyNode2.Tag = MyDir
MyNode2.ImageIndex = iconIn
MyNode2.SelectedImageIndex = iconIn
End If
Next
End If
End Sub
Yeah, you'll probably say that I could have used ToLower and ToUpper with the Extensions, but I'll leave that to you ;)