protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            ViewState["no"] = "0";
        }
        else
        {
            for (int i = 1; i <= Convert.ToInt16(ViewState["no"]); i++)
            {
                TextBox tb = new TextBox();
                tb.ID = "tb" + i.ToString();
                this.Panel1.Controls.Add(tb);
            }
        }
    }
    protected void Button1_Click(object sender, EventArgs e)
    {
        TextBox tb = new TextBox();
        ViewState["no"] = (Convert.ToInt16(ViewState["no"]) + 1).ToString();
        tb.ID = "tb" + ViewState["no"].ToString();
        this.Panel1.Controls.Add(tb);
    }
    protected void Button2_Click(object sender, EventArgs e)
    {
        for (int i = 1; i <= Convert.ToInt16(ViewState["no"]); i++)
        {
            string v = (this.Panel1.FindControl("tb" + i.ToString()) as TextBox).Text;
        }
    }
http://topic.csdn.net/u/20090923/12/ce7c0782-69b3-421c-93e1-a51a00097d57.html