转:http://blog.youkuaiyun.com/shixin1198/archive/2007/11/14/1883943.aspx
动态添加的TextBox,PostBack之后就没有了,要取得用户在里面输入的值,要用Request.Form[###]
其中的###需要填入的是控件在客户端的name属性
幸好,虽然嵌套在模版列里的TextBox的name是自动生成的,但终归有规律可循:
假设GridView控件的ID是GridView1,动态添加的TextBox控件的ID是MyText,那么:
protected void Button1_Click(object sender, EventArgs e)
{
for (int i = 0; i < GridView1.Rows.Count; i++)
{
string txtName = "GridView1$ctl"+(i+2).ToString().PadLeft(2,'0')+"$MyText";
if(Request.Form[txtName]!=null)
{
Response.Write(Request.Form[txtName] + "<br/>");
}
}
}