0

ページにパネルがあります:

<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;

この例が不自然に見えることはわかっていますが、特にここで質問するために、特定のアプリケーションで他のすべての変数を排除しようと考えました。

4

2 に答える 2

3

Page_Init などでビューステートが読み込まれる前にテキスト ボックスを追加する必要があり、これを実行できるはずです。

于 2009-04-06T18:16:57.903 に答える
2

ViewState が復元される前にテキスト ボックスがページに存在するように、Load ではなくInit、テキスト ボックスを作成するだけです。次に、ASP.Net が自動的に更新します。PreInit

于 2009-04-06T18:16:59.057 に答える