最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C#中DropDownList動(dòng)態(tài)生成的方法

 更新時(shí)間:2015年03月27日 14:47:20   作者:小啊斌  
這篇文章主要介紹了C#中DropDownList動(dòng)態(tài)生成的方法,實(shí)例分析了C#中DropDownList的使用技巧,非常具有實(shí)用價(jià)值,需要的朋友可以參考下

本文實(shí)例講述了C#中DropDownList動(dòng)態(tài)生成的方法。分享給大家供大家參考。具體分析如下:

今天學(xué)習(xí)了DropDownList的動(dòng)態(tài)生成 以及asp.net的生命周期,還有ViewState,因?yàn)轫?xiàng)目需要根據(jù)需求動(dòng)態(tài)生成條件 所以研究了一部分代碼來(lái)完成這些工作,好了話不多說(shuō)了,來(lái)看代碼

首先是網(wǎng)頁(yè)的代碼:

<span style="font-size:18px;"><body>
  <form id="form1" runat="server">
  <div>
    <asp:PlaceHolder ID="PlaceHolder1" runat="server"></asp:PlaceHolder>
 //placeholder控件相當(dāng)于一個(gè)容器,用于存放其他控件
    <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";
 //數(shù)據(jù)庫(kù)讀取
    string[] arr = str.Split('/');
    if (arr.Length == PlaceHolder1.Controls.Count)
 //防止新增類別時(shí)讀取出錯(cuò)
    {
      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);
  }
}

希望本文所述對(duì)大家的C#程序設(shè)計(jì)有所幫助。

相關(guān)文章

最新評(píng)論

凤凰县| 临朐县| 辽阳市| 台江县| 永丰县| 浪卡子县| 麟游县| 阜宁县| 自贡市| 文水县| 罗江县| 张家界市| 安岳县| 麻江县| 温泉县| 土默特左旗| 靖远县| 金华市| 鹿邑县| 庆安县| 隆德县| 涟源市| 徐汇区| 静宁县| 定结县| 金秀| 鄯善县| 岳阳县| 武安市| 开鲁县| 云浮市| 休宁县| 新河县| 大田县| 洪雅县| 广东省| 左云县| 邢台县| 吴江市| 泌阳县| 高州市|