我的页面上有一个Panel:
<asp:Panel ID="pnlTest" runat="server" />
然后我在Page_Load上动态添加一个TextBox:
TextBox simpleTextBox = new TextBox();
pnlTest.Controls.Add(simpleTextBox);
simpleTextBox.ID = "SimpleTextBox-1";
有没有办法在不直接从Request.Form中提取信息的情况下提取此TextBox中输入的信息?在我再次添加之后,我想我可以做这样的事情:
lblPresentResults.Text = myTextBox.Text;
我知道这个例子似乎很人为,但我想我会尝试消除我特定应用程序中的所有其他变量,特别是在这里提问。
答案 0 :(得分:3)
您需要在viewstate加载之前添加文本框,例如在Page_Init中,您应该能够执行此操作。
答案 1 :(得分:2)
只需在Init
或PreInit
上创建文本框而不是加载,以便在 ViewState恢复之前它存在于页面中。然后ASP.Net将自动为您更新。