动态生成控件web 动态生成控件web 在页面上添加(应该已经有了,毕竟是web页面) using System.Web.UI; using System.Web.UI.WebControls; 我们以CheckBoxList举例: System.Web.UI.WebControls.CheckBoxList cb = new CheckBoxList(); cb.ID = "cbl"; for (int i = 0; i < a.Length - 1; i++) { if (!String.IsNullOrEmpty(a[i])) { cb.Items.Add(new ListItem(a[i], i.ToString())); } else { Response.Write("null:"+i.ToString()+" "); } } //this.Page.Controls[1].Controls.Add(cb); cb.SelectedIndexChanged += new System.EventHandler(this.checkboxlist1_selectedindexchanged); cb.AutoPostBack = true; divAppPoolList.Controls.Add(cb); //this.form1.Controls.Add(cb); divAppPoolList是web页面上的一个server的控件: <div id="divAppPoolList" runat="server"></div> 或者用上述两个注释的方法。 上面有为CheckBoxList的SelectedIndexChanged的方法设置操作,如下: private void checkboxlist1_selectedindexchanged(object sender, System.EventArgs e) { Response.Write("选中项的值:<br>"); foreach (ListItem li in ((CheckBoxList)sender).Items) { if (li.Selected) { //Response.Write(li.Value + "<br>"); appPoolName = li.Text; } } } ================================================= CheckBox 自己建立的一个类: /// <summary> /// 自定义动态生成CheckBox /// </summary> public class MyChcekBox { /// <summary> /// 动态创建CheckBox /// </summary> /// <param name="CheckBoxName">CheckBox名称</param> /// <param name="CheckBoxText">CheckBox内容</param> /// <param name="CheckBoxToolTip">CheckBox提示</param> /// <param name="CheckBoxChecked">CheckBox是否选择</param> /// <returns></returns> public System.Web.UI.WebControls.CheckBox Create(string CheckBoxName, string CheckBoxText,string CheckBoxToolTip, bool CheckBoxChecked) { System.Web.UI.WebControls.CheckBox cb = new CheckBox(); cb.ID = CheckBoxName; cb.Text = CheckBoxText; cb.ToolTip = CheckBoxToolTip; cb.Checked = CheckBoxChecked; return cb; } } 然后在web页面使用: MyChcekBox cb1 = new MyChcekBox(); this.form1.Controls.Add(cb1.Create("cba", "checkboxname", "checkboxnametip", false));