更新パネル内の動的に追加されたコントロールの値へのアクセス

私は更新パネルを含むページを持っており、その内部には、button1が押されたときにテキストボックスが設定されるplaceHolderがあります。

ユーザーがButton2をクリックすると、テキストボックスに入力された値にアクセスします。私はこの問題の簡単な解決策を見つけるのに苦労しています。

下記のコードスニペットをご覧ください。

<form id="form1" runat="server">


<div>
    
        
            
        
    
    
    
</div>
</form>

protected void Button1_Click(object sender, EventArgs e)
{
    TextBox _txt = new TextBox();
    wplcHolder.Controls.Add(_txt);
}

ありがとう、 シャンドル

ベストアンサー

I suggest you to give an ID to the textbox before adding it to
the placeholder, for example let’s say you give:
yourTextBoxID

その後、理論的には Button2_Click イベントからこれを行うことができます:

var myTextBox = (wplcHolder.FindControl("yourTextBoxID") as TextBox);

新しいページライフサイクルがクリックされたときに Button1_Click からのみ行う場合は、
yourTextBoxID コントロールを常にPage_Initに追加した場合のみ
Button2 はテキストボックスが存在しない可能性が最も高いです。

すべてのテストと検証されたコース;-)

コメントする

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です