关于AJAX控件的问题
private void CreatePanel() { AjaxControlToolkit.TabContainer tc = new AjaxControlToolkit.TabContainer(); string[] str = new string[9] { "M", "A", "B", "C", "D", "E", "F", "G", "H" }; int k = 0; foreach (DataRow dr in sql.GetDataSet("select * from Item").Tables[0].Rows) { k++; AjaxControlToolkit.TabPanel tp = new AjaxControlToolkit.TabPanel(); string name = dr["Item_Name"].ToString(); string html = ""; tp.HeaderText = dr["Item_Name"].ToString(); html += "<p style='padding-top:0px; padding-bottom:2px; padding-left:0px; margin-bottom:5px;'>"; html += dr["Item_Description"].ToString(); html += "</p>"; html += "<table border='0' cellpadding='0' cellspacing='1' bgcolor='#707b8d' width='547px'style=' margin-left:0px;font-size:11px;'>"; html += "<tr bgcolor='#edf1f3'>"; html += "<td align='center' height='22px' style='width:30px;'>"; html += "编号"; html += "</td>"; html += "<td align='center'valign='middle' style='width:120px;'>"; html += "项目名称"; html += "</td>"; html += "<td align='center'valign='middle' style='width:350px;'>"; html += "项目描述"; html += "</td>"; html += "<td align='center'valign='middle' style='width:55px;'>"; html += "需要打√"; html += "</td>"; html += "</tr>"; int b = 0; foreach (DataRow dr1 in sql.GetDataSet(string.Format("select * from Project where Item_Id={0}", int.Parse(dr["Item_Id"].ToString()))).Tables[0].Rows) { b++; html += "<tr bgcolor='#FFFFFF'>"; html += "<td align='center'>"; html += str[k].ToString() + b.ToString(); html += "</td>"; html += "<td>"; html += dr1["Name"]; html += "</td>"; html += "<td>"; html += dr1["Description"]; html += "</td>"; html += "<td align='center'>"; if ((bool)dr1["Status"]) { html += "<input id='Checkbox1' type='checkbox' checked=true />"; } else { html += "<input id='Checkbox1' type='checkbox' />"; } html += "</td>"; html += "</tr>"; } html += "</table>"; html += "<p style='padding-top:5px; padding-bottom:2px; padding-left:0px; margin-bottom:8px;'>"; html += "其他" + name + "(如需增加其他项目描述,请在下面填写)"; html += "</p>"; html += "<p>"; html += "<textarea id='TextArea1' cols='20' rows='2' style='width: 540px;height:50px;'>"; html += "</textarea>"; html += "</p>"; Label lb = new Label(); lb.Text = html; tp.Controls.Add(lb); tc.Controls.Add(tp); } AjaxControlToolkit.TabPanel tp1 = new AjaxControlToolkit.TabPanel(); tp1.HeaderText = "其他设备信息"; Label lbs = new Label(); lbs.Text = "如还有其他设备信息需要描述,请在下面填写"; TextBox tb = new TextBox(); tb.TextMode = TextBoxMode.MultiLine; tb.Height = 100; tb.Width = 540; tp1.Controls.Add(lbs); tp1.Controls.Add(tb); tc.Controls.Add(tp1); Panel1.Controls.Add(tc); }
private void Page_Load(object sender, System.EventArgs e) { // 在此处放置用户代码以初始化页面 if(Session["p_userid"]==null||Session["p_loginName"]==null||Session["p_created"]==null) { Response.Write("<script>alert('请先登陆');location.href='../loginProc/login.aspx';</script>"); Response.End(); } else { Panel1.Controls.Add(new LiteralControl("<table>")); Panel1.Controls.Add(new LiteralControl("\n")); SqlCommand cmd=new SqlCommand("select infos.* from infos,infoGroups where infos.infoGroup_id = infoGroups.id and infoGroups.title='联系方式' order by infos.pri",connPartner); SqlDataAdapter da=new SqlDataAdapter(); DataSet ds=new DataSet(); da.SelectCommand=cmd; da.Fill(ds,"infos"); for (int i=0;i<ds.Tables[0].Rows.Count;i++) { Panel1.Controls.Add(new LiteralControl("<tr>")); TableCell cell = new TableCell();//创建单元格,也就是第一列 cell.Text=ds.Tables[0].Rows[i]["title"].ToString();//设置单元格内的文本 Panel1.Controls.Add(cell); Panel1.Controls.Add(new LiteralControl("<td>")); TextBox textBox=new TextBox(); textBox.ID="t"+ds.Tables[0].Rows[i]["id"].ToString(); Panel1.Controls.Add(textBox); Panel1.Controls.Add(new LiteralControl("</td>")); Panel1.Controls.Add(new LiteralControl("<td>")); Label lb=new Label(); lb.ID="l"+ds.Tables[0].Rows[i]["id"].ToString(); lb.Text=" "+ds.Tables[0].Rows[i]["tip"].ToString(); lb.CssClass="registerInfo"; Panel1.Controls.Add(lb); Panel1.Controls.Add(new LiteralControl("</td>")); Panel1.Controls.Add(new LiteralControl("</tr>")); Panel1.Controls.Add(new LiteralControl("\n")); } Button rebt=new Button(); rebt.ID="redirect"; rebt.Text=" 不填了 "; rebt.Click+=new EventHandler(rebt_Click); Panel1.Controls.Add(rebt); } }private void rebt_Click(object sender, EventArgs e) { Response.Redirect("../partnerProc/default.html"); }访问动态生成控件,可以通过FindControl方法,代码如下:for(int i=0;i<ds.Tables[0].Rows.Count;i++) { Label lb; lb=(Label)Panel1.FindControl("l"+ds.Tables[0].Rows[i]["id"].ToString()); if(lb!=null) { lb.Text=" "+ds.Tables[0].Rows[i]["tip"].ToString(); lb.CssClass="registerInfo"; } }