首页 > Web开发 > 详细

asp.net 无限分类

时间:2016-01-29 02:38:26      阅读:266      评论:0      收藏:0      [点我收藏+]
1、递归函数

//  ‘递归遍历自建目录树=============================================================================

  private void ShowDir(string sZml,string sIndex)
  {
   System.Data.SqlClient.SqlConnection sqlCon=new System.Data.SqlClient.SqlConnection(connectionString);
   string sqlStr="select * from mltable where mlzml=N‘"+ sZml +"‘";
   System.Data.SqlClient.SqlDataAdapter sqlAda=new System.Data.SqlClient.SqlDataAdapter(sqlStr,sqlCon);
   System.Data.DataTable Dt=new DataTable();
   sqlAda.Fill(Dt);
   Microsoft.Web.UI.WebControls.TreeNode Node1;
   string sIndex0;
   string sIndex2;
   int theId;

   int sIndex1=0;//记录树的最后一位值
   foreach(System.Data.DataRow DtDataRow in Dt.Rows)
   {
    theId=Convert.ToInt32(DtDataRow["mlid"]);
    Node1=new Microsoft.Web.UI.WebControls.TreeNode();
    Node1.Text=DtDataRow["mlmc"].ToString();
    Node1.ImageUrl="images/trees/folder.gif";
    Node1.ExpandedImageUrl="images/trees/folderopen.gif";
    Node1.Expanded=false;
    Node1.NavigateUrl="Admin_Tree_Show.aspx?theid=" + theId +"&sIndex="+ sIndex+"."+sIndex1.ToString();
    Node1.ID="";
    Node1.Target="main";
    if(sIndex=="")
    {
     sIndex2=TreeView1.Nodes.IndexOf(Node1).ToString();
     sIndex0=sIndex2;

    }
    else
    {

     Microsoft.Web.UI.WebControls.TreeNode pNode=TreeView1.GetNodeFromIndex(sIndex);
     pNode.Nodes.Add(Node1);
     sIndex2=pNode.Nodes.IndexOf(Node1).ToString();
     sIndex0=sIndex + "." + sIndex2;
     sIndex1++;//记录当前树下叶子的个数,即当前叶子的号
    }
    ShowDir(DtDataRow["mlid"].ToString(),sIndex0);

   
   }
   sqlCon.Close();

  }

asp.net 无限分类

原文:http://www.jb51.net/article/13633.htm

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!