In this blog we will learn how to display the File System Directories in
TreeView and display the Files in the Directory selected.
Screenshot

Snippet
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.IO;
namespace WindowsExplorer
{
public partial class Form1 : Form
{
TreeNode ParentNode;
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
treeView1.ImageList = imageList1;
foreach (DriveInfo driveInfo in DriveInfo.GetDrives())
{
if (driveInfo.IsReady)
{
ParentNode = treeView1.Nodes.Add(driveInfo.Name);
ParentNode.ImageIndex = 0;
LoadDirectories(ParentNode, driveInfo.Name);
}
}
treeView1.ExpandAll();
}
private void LoadDirectories(TreeNode parentNode, string Path)
{
TreeNode childNode;
DirectoryInfo dir
= new DirectoryInfo(Path);
foreach (DirectoryInfo di in dir.GetDirectories())
{
childNode = parentNode.Nodes.Add(di.Name);
childNode.ImageIndex = 1;
}
}
private void treeView1_AfterSelect(object sender, TreeViewEventArgs e)
{
try
{
if (e.Action
== TreeViewAction.ByMouse)
{
DirectoryInfo dir
= new DirectoryInfo(treeView1.SelectedNode.FullPath);
listView1.Items.Clear();
foreach (FileInfo files in dir.GetFiles())
{
ListViewItem item
= new ListViewItem(files.Name);
item.ImageIndex = 2;
this.listView1.Items.Add(item);
}
}
}
catch (UnauthorizedAccessException Uex)
{
MessageBox.Show(Uex.Message);
}
catch (System.IO.IOException ex)
{
MessageBox.Show(ex.Message);
}
}
}
}

Ravi ShekharPosted May 2, 2013, 6:57 AM
Nice Blog...