If it's stupid but works, it isn't stupid.
- Шаблоны страницы (MasterPage)
-- Шаблон разметки для группы страниц - Темы (Theme)
-- Набор файлов стилей и изображений - Скины (Skins)
-- Оформление ЭУ
Add -- New item -- Master page
Мастер-пейдж содержит элементы ContentPlaceHolder
куда всё страницы вставляют свой контент.
Add -- New item -- Web Form using Master Page
На странице есть блоки Content, которые передаются в блоки с соответствующим ID мастер-пейджа
Мастер-пейджи можно делать вложенными
Темы
Создание темы
Add -- Add ASP.NET Folder -- Theme
В результате создается папка App_Themes -- в ней файлы тем Theme1
Другие файлы тем также добавляются через Add -- Add ASP.NET Folder -- Theme2
Добавить файлы в тему
Щелчок по теме -- Add -- New Item -- css и skin файлы
Создаем css файл -- щелчок ПКМ внутри тега -- Build Style (Графический редактор для редактирования стилей)
Подключение темы
Непосредственно в заголовке страницы <%@ Page %>
Theme="Blue"
Скины
Щелчок на теме ПКМ -- Add -- New Item -- skin
Cкин-файлы
Отрабатывают на сервере.
Скин-файл выбирается в зависимости от присвоенной темы и автоматически применяется ко всем элементам данного типа.
Удаляем из скин-файла автоматически созданный комментарий и создаем свои свойства для элемента
Чтобы разным элементам одного типа присвоить разные скины, скинам задается скин-id SkinID
Скины
Контролы на странице
Также можно использовать для задания внешнего вида элементов свойство CssClass
Выбор темы на странице
На странице создаем выпадающий список
Курсы по asp.net от intuit.ru часть №4