*.aspx
<asp:treeview id="tv" runat="server" onTreeNodePopulate ="tv_TreeNodePopulate"></asp:treeview>
*.aspx.cs
private void page_load(object sender,EventAgs e)
{
if(!ispostback)
{
foreach(system.IO.DriveInfo df in system.IO.DriveInfo.GetDrives())
{
TreeNode tn=new TreeNode()
tn.value=df.Name;
tn.selectAction=df.TreeNodeSelectAction.SelectExpand;
tn.populateOnDemand=ture;
tn.expanded=false;
if(df.isready)
{
tn.text=df.Name;
}
tv.Nodes.Add(tn)
}
}
}
//循环遍历驱动器中的目录及子目录
private void LoadDire(TreeNode parent,string path)
{
system.IO.DirectoryInfo direInfo=new System.IO.DretoryInfo(path);
try
{
foreach(system.IO.Directoryinfo dire in System.IO.DirectoryInfo.GetDirectories() )
{
TreeNode tn=new TreeNode(dire.Name, dire.Value);
tn.selectAction=df.TreeNodeSelectAction.SelectExpand;
tn.populateOnDemand=ture;
tn.expanded=false;
parent.childNodes.Add(tn);
}
}
}
private void tv_TreeNodePopulate(Object sender,TreeNodeEventAgs e)
{
LoadDire(e.Node,e.Node.Value);//历驱动器中的目录及子目录动态绑定到树控件
}
摘自:ASP.NET 4高级编程 24章IO流------->>>>