本文實(shí)例講述了asp.net實(shí)現(xiàn)遞歸方法取出菜單并顯示在DropDownList中的方法。,具體如下:
樹形欄目展示以DropDownList的形式顯示出來。
protected void Page_Load(object sender, EventArgs e){ if (!IsPostBack) { DataTable table = bllSite.GetChannelNames(CurrentUser.ParkID); BindChannelType(table, 0, 0); }}//遞歸方法取private void BindChannelType(DataTable dt, int categoryid, int layer){ DataView dv = new DataView(dt); dv.RowFilter = " Pid= " + categoryid.ToString(); //過濾 if (categoryid != 0) { layer++; //默認(rèn)為第一層 } foreach (DataRowView drv in dv) { string span = ""; if (categoryid != 0) { for (int i = 0; i < layer; i++)//父級(jí)菜單不縮進(jìn) { span += " "; } span += "└"; } ListItem li = new ListItem(); li.Text = span + drv["ChannelName"].ToString(); li.Value = drv["Id"].ToString(); this.ddlChannel.Items.Add(li); BindChannelType(dt, Convert.ToInt32(drv["Id"]), layer); }}更多關(guān)于asp.net相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《asp.net字符串操作技巧匯總》、《asp.net操作XML技巧總結(jié)》、《asp.net文件操作技巧匯總》、《asp.net ajax技巧總結(jié)專題》及《asp.net緩存操作技巧總結(jié)》。
希望本文所述對(duì)大家asp.net程序設(shè)計(jì)有所幫助。
新聞熱點(diǎn)
疑難解答
圖片精選