国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C# > 正文

C#中DropDownList動態生成的方法

2020-01-24 02:05:11
字體:
來源:轉載
供稿:網友

本文實例講述了C#中DropDownList動態生成的方法。分享給大家供大家參考。具體分析如下:

今天學習了DropDownList的動態生成 以及asp.net的生命周期,還有ViewState,因為項目需要根據需求動態生成條件 所以研究了一部分代碼來完成這些工作,好了話不多說了,來看代碼

首先是網頁的代碼:

<span style="font-size:18px;"><body>  <form id="form1" runat="server">  <div>    <asp:PlaceHolder ID="PlaceHolder1" runat="server"></asp:PlaceHolder> //placeholder控件相當于一個容器,用于存放其他控件    <br />    <asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="Button"/></div>  </form></body></span>

下面是c#程序

public partial class _Default : System.Web.UI.Page{  private CategoryBLL _categoryBLL = new CategoryBLL();  private Category _category = new Category();  private void Page_Init(object sender, System.EventArgs e)  //可以看一下asp的生命周期  {    BindDrpClass();  }  protected void Page_Load(object sender, EventArgs e)  {    string str = "8/14/19/25"; //數據庫讀取    string[] arr = str.Split('/');    if (arr.Length == PlaceHolder1.Controls.Count) //防止新增類別時讀取出錯    {      for (int i = 0; i < PlaceHolder1.Controls.Count; i++)      {        if (PlaceHolder1.Controls[i] is DropDownList)        {          ((DropDownList)PlaceHolder1.Controls[i]).SelectedValue = arr[i];        }      }    }  }  private void BindDrpClass()  {    DataTable dt = _categoryBLL.GetCategory();    DataRow[] drs = dt.Select("pid=0");    foreach (DataRow dr in drs)    {      string id = dr["id"].ToString();      string name = dr["name"].ToString();      DropDownList ddl = new DropDownList();      //具體添加的操作      ddl.Items.Clear();      ddl.ID = "ddl" + id;      ddl.Items.Add(new ListItem("-" + name + "-", id));      PlaceHolder1.Controls.Add(ddl);      int sonparentid = int.Parse(id);      BindDrpNode(sonparentid, dt, ddl);    }  }  private void BindDrpNode(int parentid, DataTable dt, DropDownList ddl)  {    DataRow[] drs = dt.Select("pid= " + parentid);    foreach (DataRow dr in drs)    {      string id = dr["id"].ToString();      string name = dr["name"].ToString();      ddl.Items.Add(new ListItem(name, id));      PlaceHolder1.Controls.Add(ddl);    }  }  protected void Button1_Click(object sender, EventArgs e)  {    string category = "";    string category2 = "";    foreach (Control childControl in PlaceHolder1.Controls)    {      if (childControl is DropDownList)       {        category += "/" + ((DropDownList)childControl).SelectedItem.Text;        category2 += "/" + ((DropDownList)childControl).SelectedValue;      }    }    if (category.Length > 0)      category = category.Remove(0, 1);    Response.Write(category);    Response.Write("<br />");     if (category2.Length > 0)      category2 = category2.Remove(0, 1);    Response.Write(category2);  }}

希望本文所述對大家的C#程序設計有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 正阳县| 新竹市| 五峰| 上高县| 修水县| 阳东县| 上杭县| 宁强县| 平乡县| 岱山县| 儋州市| 东兰县| 永平县| 科尔| 革吉县| 吴堡县| 进贤县| 东台市| 朔州市| 乐山市| 北安市| 阿坝县| 平山县| 枣阳市| 新宾| 大荔县| 定西市| 肃北| 武义县| 铁岭县| 兴隆县| 天台县| 东至县| 长治市| 中西区| 南宁市| 昌吉市| 乌拉特前旗| 枣阳市| 茶陵县| 莲花县|