Asp.net 2.0 Treeview无限级无刷新示例
![](/Images/OutliningIndicators/ContractedBlock.gif)
![](/Images/OutliningIndicators/ExpandedBlockStart.gif)
<%@ Page Language="C#" %> <%@ Import Namespace="System.IO" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> <script runat="server"> 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=632242003305625000"; } node.ChildNodes.Add(subNode); } foreach (FileInfo fi in directory.GetFiles()) { TreeNode subNode = new TreeNode(fi.Name); node.ChildNodes.Add(subNode); } } </script>
![](/Images/OutliningIndicators/ContractedBlock.gif)
![](/Images/OutliningIndicators/ExpandedBlockStart.gif)
<html xmlns="http://www.w3.org/1999/xhtml" > <head runat="server"> <title>Untitled Page</title> </head> <body bgcolor="white"> <form id="form1" runat="server"> <div> <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> </div> </form> </body> </html>