FindControl によるコントロール取得

スポンサーリンク

Login コントロールのような複数のユーザーコントロールを内包するコントロールや、テンプレート(ContentTemplate)内に配置されているコントロールは ID 指定で直接参照できないことがあります。このような場合、FindControl() メソッドを利用することでテンプレート内のコントロールを参照することができるようになります。

Login コントロールを使った例:

<%--Login コントロール--%>

// コントロール取得
protected void Button1_Click(object sender, EventArgs e)
{
this.Login1.TemplateControl.ToString();
TextBox userName = this.Login1.FindControl("UserName") as TextBox;
TextBox password = this.Login1.FindControl("Password") as TextBox;

Debug.WriteLine(userName.Text); // ユーザーID
Debug.WriteLine(password.Text); // パスワード
}

Control.FindControl メソッド (String)
http://msdn.microsoft.com/ja-jp/library/vstudio/486wc64h%28v=vs.100%29.aspx

コメント

タイトルとURLをコピーしました