중첩마스터 페이지에서 컨트롤 찾아가기

부모마스터페이지( MasterPage.master )

     ㄴ자식마스터페이지 (MasterPage03.master)

                   ㄴAspx Content Page (Default3.aspx)

 

MasterPage.master  컨텐츠 영역

<asp:ContentPlaceHolder ID="ContentPlaceHolderContent" runat="server"> 
</asp:ContentPlaceHolder>

MasterPage03.master

<asp:Content ID="Content4" ContentPlaceHolderID="ContentPlaceHolderContent" Runat="Server">
    <asp:ContentPlaceHolder ID="ContentPlaceHolderContent" runat="server">

    </asp:ContentPlaceHolder>
</asp:Content>

Default3.aspx

<asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolderContent" Runat="Server">
     <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
</asp:Content>

Default3.aspx에서 컨트롤 접근하기

protected void Page_Load(object sender, EventArgs e)
{

//부모 * 젤 상위 부터 찾아 내려옵니다.

ContentPlaceHolder content = this.Master.Master.FindControl("ContentPlaceHolderContent") as ContentPlaceHolder;

//부모를 상속받아 구현한 마스터페이지 찾기
    ContentPlaceHolder sub_content = content.FindControl("ContentPlaceHolderContent") as ContentPlaceHolder;
    TextBox txt =  sub_content.FindControl("TextBox1") as TextBox;
    if (txt != null)
    {
        Response.Write(txt.ClientID.ToString());
    }
    else {
        Response.Write("컨트롤 못찾음");
    }

}

 

 

끝~

+ Recent posts