*.aspx页面:
< asp:treeview ID = " Treeview1 " runat = " server " ImageSet = " XPFileExplorer " AutoGenerateDataBindings = " false " ExpandDepth = 0 OnTreeNodePopulate = " Treeview1_TreeNodePopulate " > < SelectedNodeStyle BackColor = " #B5B5B5 " ></ SelectedNodeStyle > < Nodes > < asp:TreeNode Value = " C: " Text = " C: " PopulateOnDemand = " true " SelectAction = " Select " NavigateUrl = " # " > </ asp:TreeNode > </ Nodes > < NodeStyle VerticalPadding = " 2 " Font - Names = " Tahoma " Font - Size = " 8pt " HorizontalPadding = " 2 " ForeColor = " Black " ></ NodeStyle > < HoverNodeStyle Font - Underline = " True " ForeColor = " #6666AA " ></ HoverNodeStyle > </ asp:treeview >
.aspx.cs 代码:
protected void Page_Load( object sender, EventArgs e) { } public void Treeview1_TreeNodePopulate( object sender, TreeNodeEventArgs e) { if (IsCallback) if (e.Node.ChildNodes.Count == 0 ) { LoadChildNode(e.Node); } } private void LoadChildNode(TreeNode node) { DirectoryInfo directory; directory = new DirectoryInfo(node.Value); foreach (DirectoryInfo sub in directory.GetDirectories()) { TreeNode subNode = new TreeNode(sub.Name); subNode.Value = sub.FullName; try { if (sub.GetDirectories().Length > 0 || sub.GetFiles().Length > 0 ) { subNode.SelectAction = TreeNodeSelectAction.SelectExpand; subNode.PopulateOnDemand = true ; subNode.NavigateUrl = " # " ; } } catch { subNode.ImageUrl = " WebResource.axd?a=s&r=TreeView_XP_Explorer_ParentNode.gif&t=632242003305625000xx " ; } node.ChildNodes.Add(subNode); } foreach (FileInfo fi in directory.GetFiles()) { TreeNode subNode = new TreeNode(fi.Name); node.ChildNodes.Add(subNode); }}
