Основы ASP.NET 2.0


Основы Master Pages - часть 2


Это никак не влияет на модель разделения кода дочерних страниц. Кроме того, главная и дочерняя страницы могут разрабатываться на разных языках.

Чтобы получить четкое разделение страницы на логические части, используют таблицы. Построим таблицу с тремя строками, где в верхней строке находится заголовок всех страниц, а во второй — произвольное содержание; она состоит из двух ячеек, в каждой из которых по одному ContentPlaceHolder. В нижнем ряду располагается правовая информация. Таблица создается очень легко из меню Layout-Insert Table. Создайте таблицу 2 на 3. После этого объедините ячейки верхней и нижней строк, а в среднюю вставьте ContentPlaceHolder. Создайте содержание заголовка и подвала. Должна получиться подобная страница:

<%@ Master Language="C#" AutoEventWireup="true" CodeFile="MasterPage.master.cs" Inherits="MasterPage" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" > <head runat="server"> <title>Привет!</title> </head> <body> <form id="form1" runat="server"> <div> <table> <tr bgcolor="#6699cc"> <td colspan="2" style="vertical-align: middle; color: white; text-align: center;">Школа программирования ASP.NET 2.0 </td> </tr> <tr> <td style="width: 100px" valign="top"> <asp:contentplaceholder id="ContentPlaceHolder1" runat="server"> </asp:contentplaceholder> </td> <td style="width: 100px" valign="top"> <asp:ContentPlaceHolder ID="ContentPlaceHolder2" runat="server"> </asp:ContentPlaceHolder> </td> </tr> <tr> <td colspan="2"> <span style="font-size: 8pt">Copyright © 2006 - Школа ASP.NET 2.0</span></td> </tr> </table> </div> </form> </body> </html>

Первое отличие этой страницы от обычной в том, что она начинается с директивы Master, а не Page. Класс мастер-страницы определен в файле MasterPage.master.cs:

public partial class MasterPage : System.Web.UI.MasterPage { protected void Page_Load(object sender, EventArgs e) {

} }

Класс шаблона — наследник System.Web.UI.MasterPage, который в свою очередь наследует от System.Web.UI.UserControl.

В ней могут находиться любые элементы управления и HTML-код. В ней могут обрабатываться и события страницы. Два элемента ContentPlaceHolder обозначают места, куда вставляется содержание страницы-наследницы.




- Начало -  - Назад -  - Вперед -



Книжный магазин