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);
}
}