protected void Page_Load(object sender, EventArgs e)
{
System.IO.DirectoryInfo dir = new System.IO.DirectoryInfo(Server.MapPath("~/"));
TreeView treeView1 = new TreeView();
TreeNode nodeMain = OutPutNodes(dir, null);
treeView1.Nodes.Add(nodeMain);
this.form1.Controls.Add(treeView1);
}
private TreeNode OutPutNodes(System.IO.DirectoryInfo dir, TreeNode parentNode)
{
if (dir == null)
return null;
TreeNode dirNode = new TreeNode(dir.Name);
System.IO.DirectoryInfo[] subDirs = dir.GetDirectories();
for (int i = 0; i < subDirs.Length; i++)
{
OutPutNodes(subDirs[i], dirNode);
}
System.IO.FileInfo[] files = dir.GetFiles();
for (int i = 0; i < files.Length; i++)
{
dirNode.ChildNodes.Add(new TreeNode(files[i].Name));
}
if (parentNode == null)
{
return dirNode;
}
else
{
parentNode.ChildNodes.Add(dirNode);
return parentNode;
}
{
System.IO.DirectoryInfo dir = new System.IO.DirectoryInfo(Server.MapPath("~/"));
TreeView treeView1 = new TreeView();
TreeNode nodeMain = OutPutNodes(dir, null);
treeView1.Nodes.Add(nodeMain);
this.form1.Controls.Add(treeView1);
}
private TreeNode OutPutNodes(System.IO.DirectoryInfo dir, TreeNode parentNode)
{
if (dir == null)
return null;
TreeNode dirNode = new TreeNode(dir.Name);
System.IO.DirectoryInfo[] subDirs = dir.GetDirectories();
for (int i = 0; i < subDirs.Length; i++)
{
OutPutNodes(subDirs[i], dirNode);
}
System.IO.FileInfo[] files = dir.GetFiles();
for (int i = 0; i < files.Length; i++)
{
dirNode.ChildNodes.Add(new TreeNode(files[i].Name));
}
if (parentNode == null)
{
return dirNode;
}
else
{
parentNode.ChildNodes.Add(dirNode);
return parentNode;
}
}