ASP.NET uses TreeView methods to display files

  • 2021-01-14 05:48:21
  • OfStack

TreeView is commonly used in ASP.NET, so take advantage of it

First add the TreeView control


<asp:TreeView ID="driverInfoView" runat="server" ImageSet="XPFileExplorer" OnTreeNodePopulate="driverInfoView_TreeNodePopulate">
</asp:TreeView>

When the page loads, write the following code


protected void Page_Load(object sender, EventArgs e) 
{ 
foreach (DriveInfo driverInfo in DriveInfo.GetDrives()) 
{ 
TreeNode newNode = new TreeNode(); 
newNode.Expanded = false; 
newNode.PopulateOnDemand = true; 
newNode.Value = driverInfo.Name; 

if (driverInfo.IsReady) 
{ 
newNode.Text = driverInfo.Name + "(" + driverInfo.VolumeLabel + ")"; 
} 
else 
{ 
newNode.Text = driverInfo.Name + "( I'm not ready )"; 
} 
this.driverInfoView.Nodes.Add(newNode); 
} 
}

Events that set the TreeView node


protected void driverInfoView_TreeNodePopulate(object sender, TreeNodeEventArgs e) 
{ 
DirectoryInfo dictInfo = new DirectoryInfo(e.Node.Value); 

foreach (DirectoryInfo directory in dictInfo.GetDirectories()) 
{ 
TreeNode newNode = new TreeNode(); 
newNode.Expanded = false; 
newNode.PopulateOnDemand = true; 
newNode.Text = directory.Name; 
newNode.Value = directory.FullName; 
e.Node.ChildNodes.Add(newNode); 
} 

foreach (FileInfo fileInfo in dictInfo.GetFiles()) 
{ 
TreeNode newNode = new TreeNode(); 
newNode.Text = fileInfo.Name; 
newNode.Value = fileInfo.FullName; 
e.Node.ChildNodes.Add(newNode); 
}
}

Related articles: