Краткий обзор мастер-страниц (Master Pages) в ASP.NET 2.0

ОГЛАВЛЕНИЕ

Когда дизайнеры создают верстку для веб-сайта, они в основном разделяют верстку на определенные области. Например, как показано на изображении справа, все страницы сайта Amazon.com разделены на различные секции, такие как шапка (обведена красным), навигационная панель слева (обведена коричневым), область основной информации в центре (обведена зеленым), и область последних новостей справа (обведена розовым).

 

При создании веб-приложений ASP.NET 1.x вам часто придется использовать пользовательские элементы управления для верхней (header) и нижней (footer) частей страниц (User Control). Пользовательские элементы управления для верхней части страницы обычно содержат начальный <html> элемент вместе с тем содержимым, которое мы желаем отображать в верхней части каждой страницы. Пользовательские элементы управления для нижней части страницы могут содержать общую для всех страниц информацию, отображенную в нижней части, закрывающий </html>, а также все сопутствующие тэги. Это применимо тогда, когда верстка вашего сайта может быть разделена на верхний и нижний HTML-блоки, но что делать в других случаях?

При использовании ASP.NET 1.x у вас не будет возможности создать сайт, обладающий соответствующим сценарием диалога с пользователем. Да, вы можете применить пользовательские элементы управления как описано выше, но вам придется вручную добавлять стандартные пользовательские элементы управления на каждую страницу. Более того, пользовательские элементы управления не обрабатываются в Visual Studio .NET в виде маленьких серых прямоугольников, тем самым нейтрализуются достоинства VS.NET Designer относительно способа редактирования WYSIWYG. Более практичной техникой предоставления соответствующей верстки сайта в ASP.NET 1.x является использование мастер-страниц (MasterPages). Уже не раз говорилось, что мастер-страница предоставляет средства для определения общего сценария диалога с пользователем при помощи редактируемых областей содержимого. Страница может использовать мастер-страницу, тем самым унаследовать стандартизированный сценарий диалога с пользователем, и все что останется разработчику, это настроить редактируемые области.

К сожалению, ASP.NET 1.x не предоставляет поддержку для мастер-страниц в Visual Studio .NET. Однако это было исправлено в ASP.NET 2.0. Visual Studio 2005 обладает богатой WYSIWYG поддержкой мастер-страниц. В данной статье мы ознакомимся с поддержкой мастер-страниц в Visual Studio 2005 и ASP.NET 2.0. Данная статья не углубляется во всю суть мастер-страниц. В добавок, данная статья была написана во время существования Beta 1 версии ASP.NET 2.0; скриншоты/инструкции, рассматриваемые здесь, могут отличаться от версий, выполненных в ASP.NET 2.0/Visual Studio 2005. Вы можете загрузить последнюю версию 2.0 beta по данной ссылке http://labs.msdn.microsoft.com/.