在Page_Init上,如果回发了,我检查是否单击了一个名为Button1的按钮,如果是,则向一个名为Panel1的面板添加一个LiteralControl:

Panel1.Controls.Add(new LiteralControl("Enter Code:<input type=\"text\" name=\"txtCode\"></td>"));


如您所见,它只是文本“ Enter Code:”,后跟一个名为txtCode的TextBox。

我有第二个按钮(Button2),单击该按钮时,我想检索在txtCode中输入的文本:

protected void Button2_Click(object sender, EventArgs e)
    {
        foreach (Control c in Panel1.Controls)
        {
            if (c is LiteralControl) ...
        }
    }


我不确定该怎么做...如何获取在txtCode中输入的文本?

最佳答案

您始终可以使用Request.Form集合:

string txtCode = Request.Form["txtCode"];


它将包含与当前请求一起发布的所有值,无论是否是服务器端控件。

10-07 13:23