protected void AddLayer() { if (Session["Bid"] == null) { Response.Write("<script>alert('尚未選擇標案');self.close();</script>"); } else { PlaceHolder1.Controls.Clear(); //先清除所有子控制項 string[] data = WebModel.Get_WBS_LayerKind(Session["DatabaseName"].ToString(), Session["BID"].ToString()); //string[] LayerNum = data[1].Split(','); //string[] LayerKind = data[2].Split(','); string[] LayerNum = new string[1]; string[] LayerKind = new string[1]; if (data[1] != null && data[2] != null) { LayerNum = data[1].Split(','); LayerKind = data[2].Split(','); if (ViewState["ADD"] == null) { //Section1_Click(this, null); //if (Session["layer"] != null && Session["layer"]!="") //{ ViewState["i"] = int.Parse(ViewState["layer"].ToString()); //} } for (int i = 0; i < int.Parse(ViewState["i"].ToString()); i++) { DropDownList ddl = new DropDownList(); ddl.ID = i.ToString(); ddl.DataSourceID = "SqlDataSource1"; ddl.DataTextField = "OrderName"; ddl.DataValueField = "Kind"; //ddl.DataBind(); int y = i + 1; //ddl.AutoPostBack = true; ddl.SelectedIndexChanged += itemselect_indexchange; //ddl.DataBind(); PlaceHolder1.Controls.Add(new LiteralControl("<tr><td class=\"auto-style13\">第 " + y + " 階</td><td class=\"auto-style14\">")); PlaceHolder1.Controls.Add(ddl); //ddl.Items.Insert(0, new ListItem("-請選擇-", "0")); PlaceHolder1.Controls.Add(new LiteralControl("</td></tr>")); //ddl = (DropDownList)PlaceHolder1.FindControl(i.ToString()); } this.ViewState["ADD"] = true; for (int i = 0; i < int.Parse(LayerNum.Max()); i++) { DropDownList DDL = (DropDownList)PlaceHolder1.FindControl(i.ToString()); if (DDL != null) { DDL.SelectedValue = LayerKind[i]; } } //} } else { if (LayerNum[0] == null) { LayerNum = new string[1] { "1" }; LayerKind = new string[1] { "1" }; } for (int i = 0; i < int.Parse(ViewState["i"].ToString()); i++) { DropDownList ddl = new DropDownList(); ddl.ID = i.ToString(); ddl.DataSourceID = "SqlDataSource1"; ddl.DataTextField = "OrderName"; ddl.DataValueField = "Kind"; //ddl.DataBind(); int y = i + 1; // ddl.AutoPostBack = true; ddl.SelectedIndexChanged += itemselect_indexchange; PlaceHolder1.Controls.Add(new LiteralControl("<tr><td class=\"auto-style13\">第 " + y + " 階</td><td class=\"auto-style14\">")); PlaceHolder1.Controls.Add(ddl); //ddl.Items.Insert(0, new ListItem("-請選擇-", "0")); PlaceHolder1.Controls.Add(new LiteralControl("</td></tr>")); } for (int i = 0; i < int.Parse(LayerNum.Max()); i++) { DropDownList DDL = (DropDownList)PlaceHolder1.FindControl(i.ToString()); if (DDL != null) { DDL.SelectedValue = LayerKind[i]; } } } } }