校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 知識庫 > .Net中實現無限分類的2個例子

.Net中實現無限分類的2個例子

熱門標簽:外呼電銷機器人軟件 河南語音外呼系統公司 關于宗地圖標注技術規范 400電話辦理最優質 威海電銷 河北網絡回撥外呼系統 寧夏機器人電銷 t3出行地圖標注怎么做 400免費電話怎么辦理

以前總想著搞這個無限分類,今天終于得空好好的看了下,發現實現的原理還是很簡單的,數據結構上,用兩列(分類編號,上級編號)就可以實現,可是為了聯合查詢的方便,一般都再增加一列(深度),在這個實例里,我只用了兩列,剩下的無非就是遞歸著對TreeView進行數據綁定而已~~。

復制代碼 代碼如下:

 public partial class _Default : System.Web.UI.Page
    {
        BIL bil = new BIL();
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                bind_tree("0",null);
            }
        }
        protected void bind_tree(string ChildNode,TreeNode tn)
        {
            DataTable dt = bil.GetByClassPre(ChildNode).Tables[0];

            foreach (DataRow dr in dt.Rows)
            {
                TreeNode Node = new TreeNode();
                if (tn==null)
                {
                    //根
                    Node.Text = dr["ClassName"].ToString();
                    this.TreeView1.Nodes.Add(Node);
                    bind_tree(dr["ClassId"].ToString(), Node);
                }
                else
                {
                    //當前節點的子節點
                    Node.Text = dr["ClassName"].ToString();
                    tn.ChildNodes.Add(Node);
                    bind_tree(dr["ClassId"].ToString(),Node);
                }
            }
        }
    }

上次寫了使用TreeView控件進行無限分類綁定的方法,這回再寫個通用性更好的~~嘿嘿 綁定DropDownList~~思想跟上篇日志很接近,也是使用遞歸,當然,網絡上還有很多人給數據庫增加了一個“Depth(深度)”的字段,這樣進行綁定的時候還可以更簡單些哈~~當然,沒有必要的就不加了,還是遞歸使用起來簡單些哈~~不多說了,上代碼哈:

復制代碼 代碼如下:

protected void bind_droplist(string ChildNode, string tmp)
        {
            DataTable dt = bil.GetByClassPre(ChildNode).Tables[0];

            foreach (DataRow dr in dt.Rows)
            {
                if (dr["ClassPre"].ToString()=="0")
                {
                    //如果是根節點
                    tmp = "";
                    DropDownList1.Items.Add(dr["ClassName"].ToString());
                    bind_droplist(dr["ClassId"].ToString(), tmp + " ");
                }
                else
                {
                    //不是根節點
                    DropDownList1.Items.Add( tmp+"|-" + dr["ClassName"].ToString());
                    bind_droplist(dr["ClassId"].ToString(), tmp + " ");
                }
            }
        }


您可能感興趣的文章:
  • asp.net 無限分類

標簽:淮北 吉林 樂山 固原 池州 咸寧 賀州 廣元

巨人網絡通訊聲明:本文標題《.Net中實現無限分類的2個例子》,本文關鍵詞  .Net,中,實現,無限,分類,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《.Net中實現無限分類的2個例子》相關的同類信息!
  • 本頁收集關于.Net中實現無限分類的2個例子的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 邢台县| 科尔| 漠河县| 巨野县| 云梦县| 林州市| 外汇| 双牌县| 禹城市| 抚顺县| 班戈县| 南充市| 婺源县| 洪洞县| 应城市| 从化市| 伊金霍洛旗| 彭州市| 娱乐| 合水县| 子洲县| 遂宁市| 横山县| 汉中市| 萍乡市| 松阳县| 金沙县| 蒙阴县| 久治县| 泸溪县| 松桃| 南郑县| 遂平县| 玛沁县| 太仓市| 永善县| 咸宁市| 垫江县| 石阡县| 将乐县| 北海市|