ASP.NET 웹 양식 - 마스터 페이지
ASP.NET 마스터 페이지를 사용하여 응용 프로그램 페이지에 대한 일관된 레이아웃을 만듭니다.마스터 페이지는 웹 사이트의 다른 페이지에 대한 템플릿을 제공합니다.
마스터 페이지
마스터 페이지를 사용하면 웹 애플리케이션의 모든 페이지(또는 페이지 그룹)에 대해 일관된 모양과 동작을 만들 수 있습니다.
마스터 페이지는 공유 레이아웃과 기능을 갖춘 다른 페이지에 대한 템플릿을 제공합니다. 마스터 페이지는 콘텐츠 페이지에서 재정의할 수 있는 콘텐츠에 대한 자리 표시자를 정의합니다. 출력은 마스터 페이지와 콘텐츠 페이지의 조합입니다.
콘텐츠 페이지에는 표시하려는 콘텐츠가 포함되어 있습니다.
사용자가 콘텐츠 페이지를 요청하면 ASP.NET은 페이지를 병합하여 마스터 페이지 레이아웃과 콘텐츠 페이지 콘텐츠를 결합한 출력을 생성합니다.
마스터 페이지 예
<%@ 마스터 %><html><body><h1>마스터 페이지의 표준 헤더</h1><asp:ContentPlaceHolder id="CPH1" runat="server"></asp:ContentPlaceHolder></body></ HTML>위의 마스터 페이지는 다른 페이지용으로 설계된 일반 HTML 템플릿 페이지입니다.
@Master 지시문은 이를 마스터 페이지로 정의합니다.
마스터 페이지에는 개별 콘텐츠에 대한 자리 표시자 태그 <asp:ContentPlaceHolder> 가 포함되어 있습니다.
id="CPH1" 특성은 자리 표시자를 식별하고 동일한 마스터 페이지에 여러 자리 표시자를 허용합니다.
이 마스터 페이지는 "master1.master" 로 저장됩니다.
참고: 마스터 페이지에는 동적 콘텐츠를 허용하는 코드도 포함될 수 있습니다.
콘텐츠 페이지 예
<%@ Page MasterPageFile="master1.master" %><asp:Content ContentPlaceHolderId="CPH1" runat="server"><h2>개별 콘텐츠</h2><p>1단락</p><p>단락 2</p></asp:콘텐츠>위의 콘텐츠 페이지는 사이트의 독립된 콘텐츠 페이지 중 하나입니다.
@Page 지시문은 이를 표준 콘텐츠 페이지로 정의합니다.
콘텐츠 페이지에는 마스터 페이지(ContentPlaceHolderId="CPH1")를 참조하는 콘텐츠 태그 <asp:Content> 가 포함되어 있습니다.
이 콘텐츠 페이지는 "mypage1.aspx" 로 저장됩니다.
사용자가 페이지를 요청하면 ASP.NET은 마스터 페이지를 콘텐츠 페이지와 병합합니다.
참고: 콘텐츠 텍스트는 <asp:Content> 태그 안에 있어야 합니다. 태그 외부의 콘텐츠 텍스트는 허용되지 않습니다.
컨트롤이 포함된 콘텐츠 페이지
<%@ 페이지 MasterPageFile="master1.master" %><asp:Content ContentPlaceHolderId="CPH1" runat="server"><h2>W3CSchool</h2><form runat="server"><asp:TextBox id= "textbox1" runat="server" /><asp:Button id="button1" runat="server" text="Button" /></form></asp:Content>위의 콘텐츠 페이지는 일반 페이지에 삽입하는 것처럼 .NET 컨트롤을 콘텐츠 페이지에 삽입하는 방법을 보여줍니다.
위 내용은 인터페이스 디자인의 모듈화를 효과적으로 구현하고 코드 재사용을 실현하는 ASP.NET 마스터 페이지와 관련된 내용입니다.