Treeview 无限级无刷新示例

    技术2022-05-11  86

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

    最新回复(0)