asp.net动态生成控件的方法:
1.在aspx页面放一个Panel控件
2.代码如下:
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";
}
}
分享到:
相关推荐
动态添加控件 动态添加控件 动态添加控件
asp.net 动态添加控件,C# 代码。动态添加控制的一个小实例。希望对大家有用。。。
asp.net实现动态添加控件并添加事件实例的源程序
asp.net 动态生成控件(在数据库提取数据)或直接动态生成,及其自动生成控件的取值
后台动态生成控件填充表单元素.rar,后台动态创建表单元素,后台动态创建控件,创建控件
此源码提供了,动态生成文本框、上传控件(FileUpload)等demo.大家可以按照自己需要手动更改要生成的控件类型。
VS.net 2008 asp.net 动态 添加 删除 控件
主要实现客户端页面上的控件动态生成。实现无限添加。
C# 从数据库取数据,并动态生成按件后,取值等. 仅供参考.
【ASP.NET编程知识】ASP.NET动态添加用户控件的方法.docx
asp.net中的FileUpload控件一次只能实现上传一个文件,若要上传多个文件的话必须使用多个FileUpload控件,但一次上传多少个文件有时不确定,所以就想到了动态创建控件。此处是用下拉列表控件的postback控制的,要想...
代码如下://动态生成三个控件 protected void Button1_Click(object sender, EventArgs e) { for (int i = 0; i < 3; i++) { TextBox t = new TextBox(); t.ID = string.Format(“newTextBox{0}”,i); Panel1....
动态生成控件C#语言支持,asp.net新手必备
ASP.net生成条形码-二维码控件,使用与条形码技术和二维码技术
详细介绍了HTML动态创建和删除页面控件的使用,对初学者非常有用,提高水平,起到抛砖引玉的作用,动态布局ASP.NET页面是一个比较难做的事情,本例子就详细实现了整个过程
c#语言asp.net实现treeview控件读数据库动态生成树
c#语言asp.net实现treeview控件读数据库动态生成树
ASP.NET 服务器控件:DropDownCheckBoxList ,支持下拉多选,支持.NET3.5 支持主流浏览器IE8及以上版本 FF3.5+,Chrome 9+,Safari 5 等浏览器。
ASP.NET c# 日期控件,很好用,测试通过 下载后解压放到站点文件夹下,引用时注意...再添加一个文本框控件 <asp:TextBox ID="cprq" class="Wdate" runat="server" onclick="WdatePicker()"></asp:TextBox> 一切就OK了
asp.net 利用TreeView控件动态生成无限级树.rar