dropdownlist 实现无限级树形菜单
有時(shí)候,分類做的是無限級(jí)分類,(如果你還不會(huì),請(qǐng)Google一下),取分類的時(shí)候就是個(gè)問題,怎么才能取出來呢?看代碼:
private void BindDrpClass()
??? {
??????? //獲得所有數(shù)據(jù)列表
??????? DataTable dt = mh.returnds_bysting("select * from TB_SupplyType ").Tables [0];
??????? ddl . Items.Clear();
??????? ddl.Items.Add(new ListItem("選擇類別", "0"));
??????? DataRow[] drs = dt.Select("s_Sid= " + 0);
??????? foreach (DataRow dr in drs)
??????? {
??????????? string classid = dr["s_Id"].ToString();
??????????? string classname = dr["s_Title"].ToString();
??????????? //頂級(jí)分類顯示形式
??????????? classname = "" + classname;
??????????? ddl.Items.Add(new ListItem(classname, classid));
??????????? int sonparentid = int.Parse(classid);
??????????? string blank = " ";
??????????? //遞歸子分類方法
??????????? BindNode(sonparentid, dt, blank);
??????? }
??????? ddl.DataBind();
??? }
??? private void BindNode(int parentid, DataTable dt, string blank)
??? {
??????? DataRow[] drs = dt.Select("s_Sid= " + parentid);
??????? foreach (DataRow dr in drs)
??????? {
??????????? string classid = dr["s_Id"].ToString();
??????????? string classname = dr["s_Title"].ToString();
??????????? classname = blank + classname;
??????????? ddl.Items.Add(new ListItem(classname, classid));
??????????? int sonparentid = int.Parse(classid);
??????????? string blank2 = blank + "-";
??????????? BindNode(sonparentid, dt, blank2);
??????? }
??? }
雖然能實(shí)現(xiàn)無限級(jí)分類,但是樣式有點(diǎn)遜色,有興趣的朋友可以加個(gè)css 控制一下
轉(zhuǎn)載于:https://www.cnblogs.com/zhanlang/archive/2010/11/12/1875781.html
總結(jié)
以上是生活随笔為你收集整理的dropdownlist 实现无限级树形菜单的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: .net身份证号码验证
- 下一篇: Code On Earth