آموزش WebForm-صفحه Master

چاپ

master page قالبی را برای سایر صفحات سایت شما فراهم می کنند.


Master Pages

master page به شما احازه می دهد تا یک نمای ثابت و رفتار یکسانی برای تمام صفحات (یا گروهی از صفحات) کاربرد وب خود ایجاد نمایید.

یک صفحه master، قالبی  با layout و کارایی مشترک، برای سایر صفحات فراهم می کند. master page، برای قرار گرفتن محتوا تعدادی placeholder تعریف می کند، که content page ها داخل این placeholder ها قرار می گیرند. نتیجه خروجی ترکیب content page و master page می باشد.

content page ها حاوی محتوایی است که قصد دارید نمایش دهید.

هنگامی که کاربری یک content page را درخواست کرد، ASP.NET صفحات master page و content page را برای تولید خروجی ترکیب می کند.


Master Page مثال

<%@ Master %>

<html>
<body>
<h1>Standard Header From Masterpage</h1>
<asp:ContentPlaceHolder id="CPH1" runat="server">
</asp:ContentPlaceHolder>
</body>
</html>

master page بالا یک صفحه html ساده است که به عنوان قالب برای سایر صفحات طراحی شده است.

دایرکتیو Master @ صفحه را به عنوان master page تعریف می کند.

master page حاوی یک تگ placeholder به صورت <asp:ContentPlaceHolder> برای هر محتوا می باشد.

ویژگی id="CPH1"، که برای شناسایی placeholder به کار می رود، اجازه می دهد تعداد زیادی Placeholder در یک master page مشابه قرار گیرد.

این master page با نام "master1.master" ذخیره گردیده است.

Note نکته: master page همچنین می تواند حاوی کدهایی باشد که محتوای پویا را نمایش می دهدNote: The master page can also contain code, allowing dynamic content.

Content Page مثال

<%@ Page MasterPageFile="master1.master" %>

<asp:Content ContentPlaceHolderId="CPH1" runat="server">
  <h2>Individual Content</h2>
  <p>Paragraph 1</p>
  <p>Paragraph 2</p>
</asp:Content>

content page فوق یکی از چندین content page ی است که می تواند در کاربرد وب شما وجود داشته باشد.

دایرکتیو Page @ صفحه را به عنوان content page استاندارد تعریف می کند.

content page حاوی تگ <asp:Content> است که در آن به صفحه اصلی ارجاع داده شده است. (ContentPlaceHolderId="CPH1")

هنگامی که کاربر این صفحه را درخواست کرد، ASP.NET صفحات master page و content page را ادغام می کند.

Note نکته: متن محتوا بایستی داخل تگ <asp:Content> باشد . خارج از این تگ اجازه درج محتوا وجود ندارد.

Content Page With Controls

<%@ Page MasterPageFile="master1.master" %>

<asp:Content ContentPlaceHolderId="CPH1" runat="server">
  <h2>W3Schools</h2>
  <form runat="server">
    <asp:TextBox id="textbox1" runat="server" />
    <asp:Button id="button1" runat="server" text="Button" />
  </form>
</asp:Content>

content page بالا نشان می دهد که چگونه کنترل های NET.  می توانند داخل content page قرار گیرند دقیقا مانند وقتی که در یک صفحه معمولی قرار می گیرند.