当前位置: 首页 > 图文教程 > 网络编程 > ASP.NET > asp.net 动态生成控件并获取其值

ASP.NET
.Net将如何影响我们?(一)
.Net将如何影响我们?(二)
开发者面临的.Net挑战(一)
开发者面临的.Net挑战(三)
.Net的精髓-XML和SOAP(一)
.Net的精髓-XML和SOAP(二)
.Net的精髓-XML和SOAP(三)
.net的reflection (1)
.net的reflection (2)
Asp.net编写的PING工具
.NET语言的选择
且看微软的.Net和Sun公司的J2EE如何对垒
从 Visual Basic 6.0 到 Visual Basic.NET 的转换(1)
从 Visual Basic 6.0 到 Visual Basic.NET 的转换(2)
从 Visual Basic 6.0 到 Visual Basic.NET 的转换(3)
从 Visual Basic 6.0 到 Visual Basic.NET 的转换(4)
从 Visual Basic 6.0 到 Visual Basic.NET 的转换(5)
什么是配件(assembly)?
什么是映射(reflection)?
从一个舆论调查的制作谈面向对象的编程思路(一)

ASP.NET 中的 asp.net 动态生成控件并获取其值


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 337 ::
收藏到网摘: n/a

代码比较简单,所以不多做解释了:
复制代码 代码如下:

//动态生成三个控件
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.Controls.Add(t);
}
ListControlsInPanel();
}

复制代码 代码如下:

//获取动态生成的控件的值
protected void Button3_Click(object sender, EventArgs e)
{
string str="";
string[] ak = Request.Form.AllKeys;
for (int i = 0; i < Request.Form.Count; i++)
{
//只筛选出动态生成的三个控件的值
if(ak[i].IndexOf ("new")>-1)
str += string.Format("<li>{0}</li><br>",Request .Form [i]);
}
Label1.Text = str;
}

//这里新生成的控件的ID命名使用new开头,同时应保证页面没有控件的ID包含new。