Mega Code Archive

 
Categories / VB.Net Tutorial / GUI Applications
 

File Treeview

Imports System.ComponentModel Imports System.Drawing Imports System.Runtime.InteropServices Imports System.Windows.Forms Imports System.Windows.Forms.Design Imports System.IO public class TreeViewFileFolder    public Shared Sub Main         Application.Run(New Form1)    End Sub End class Public Class Form1     Inherits System.Windows.Forms.Form     Public Sub New()         MyBase.New()         InitializeComponent()     End Sub     Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean)         If disposing Then             If Not (components Is Nothing) Then                 components.Dispose()             End If         End If         MyBase.Dispose(disposing)     End Sub     Private components As System.ComponentModel.IContainer     Friend WithEvents TreeView1 As System.Windows.Forms.TreeView     <System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent()         Me.TreeView1 = New System.Windows.Forms.TreeView         Me.SuspendLayout()         '         'TreeView1         '         Me.TreeView1.Location = New System.Drawing.Point(16, 15)         Me.TreeView1.Name = "TreeView1"         Me.TreeView1.Size = New System.Drawing.Size(544, 273)         Me.TreeView1.TabIndex = 0         '         'Form1         '         Me.AutoScaleBaseSize = New System.Drawing.Size(8, 18)         Me.ClientSize = New System.Drawing.Size(587, 309)         Me.Controls.Add(Me.TreeView1)         Me.ResumeLayout(False)     End Sub     Public Function BuildDirectory(ByVal aNode As TreeNode) As String         Dim theNode As TreeNode = aNode         Dim strDir As String = ""         While Not (theNode Is Nothing)             If theNode.Text.Substring((theNode.Text.Length - 1)) <> "\" Then                 strDir = "\" + strDir             End If             strDir = theNode.Text + strDir             theNode = theNode.Parent         End While         Return strDir     End Function     Public Sub PopulateNode(ByVal aNode As TreeNode, ByVal strDir As String)         Me.Cursor = Cursors.WaitCursor         Dim Dir As Directory          Dim count As Integer = 0         Dim M_STRfILTER = "*.*"         Dim i As Integer         For i = 0 To (Dir.GetDirectories(strDir).Length) - 1             Dim ChildNode As New TreeNode(Dir.GetDirectories(strDir)(i).ToString, 1, 0)             i = aNode.Nodes.Add(ChildNode)             count += 1         Next i         For i = 0 To (Dir.GetFiles(strDir, M_STRfILTER).Length) - 1             Dim ChildNode As New TreeNode(Dir.GetFiles(strDir, M_STRfILTER)(i).ToString, 2, 2)             i = aNode.Nodes.Add(ChildNode)         Next i         aNode.Expand()         Me.Cursor = Cursors.Arrow     End Sub     Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load         Dim oNode As New System.Windows.Forms.TreeNode()         Try             oNode.ImageIndex = 0             oNode.SelectedImageIndex = 0             oNode.Text = "C:\"             TreeView1.Nodes.Add(oNode)             'oNode.Nodes.Add("")         Catch ex As Exception             Console.WriteLine("Cannot create initial node:" & ex.ToString)         End Try     End Sub     Private Sub TreeView1_AfterSelect(ByVal sender As Object, ByVal e As System.Windows.Forms.TreeViewEventArgs) Handles TreeView1.AfterSelect         Text = e.Node.Text         If Directory.Exists(e.Node.Text) = True Then PopulateNode(e.Node, e.Node.Text)         If File.Exists(e.Node.Text) = True Then MsgBox(e.Node.Text)     End Sub      End Class