Применение темы к сайту или странице

Оценить
(0 голоса)

Для применения темы существует несколько способов. Каждый из них обеспечивает разный уровень управления. Например, вы можете настроить глобальную тему для всего сервера. Вы можете настроить тему только для одного Web-сайта. Вы можете также настроить тему на уровне отдельной страницы. Наконец, вы можете применить одну обложку к одному эле­менту управления. Как видите, это очень разные уровни— от макроуровня (сервер) до самого низкого (элемент управления). Большинство Web-сайтов окажется где-то в середине (применение темы на уровне страницы или сайта).

Тему на уровне страницы вы применяете при помощи использования директивы 0 Раде внутри кода разметки страницы. Здесь у вас есть несколько опций. Вы можете решить, что ваша тема должна всегда подавлять все настройки элементов управления. То есть если раз­работчик явным образом устанавливает значение элемента управления и это значение пере­определяется темой, то тема берет верх. Такой тип объявления выглядел бы примерно так:

<%@ Page Theme="MyPageTheme" %>

Другой вариант: вы можете настроить на уровне страницы то, что называется styleSheetTheme. Это указывает, что тема применима только там, где элементы управле­ния не имеют явно заданных совпадающих значений. В предыдущем объявлении тема пере­определит локальные настройки элементов управления. При помощи же StyleSheetTheme вы можете задать применение темы только к тем настройкам элементов управления, кото­рые не установлены явным образом. То есть если элемент управления имеет значение для некого атрибута, то будет использоваться именно это значение. Если он его не имеет, то будет использоваться значение из темы. Такой тип темы для страницы настраивается сле­дующим образом:

<%@ Page StylesheetTheme="MyPageTheme" %>

При помощи конфигурационного файла вы можете определить тему для всего Web-сайта. Это позволяет вам настроить тему, а затем сменить ее без перекомпиляции вашего кода. Для этого вы добавляете атрибут Theme или StylesheetTheme (см. предыдущий пример) в эле­мент pages внутри узла system, web. Вот пример:

<system.web>

<pages theme="MySiteTheme" />

</system.web>

Для определения только темы таблицы стилей вы будете использовать следующее:

<system.web>

<pages stylesheetTheme=" MySiteTheme" />

</system.web>

Вы можете также настроить тему в вашем коде. Эта возможность может быть полезной в том случае, когда вы позволяете пользователям выбирать тему или когда вы динамически настраиваете тему по некой информации о пользователе. Вспомним пример с двумя компа­ниями: А и В. Вы помните, что для каждой из них была определена тема. Если вы определи­те в своем коде, что зарегистрировался представитель компании А, то вы настраиваете тему следующим образом:

Page. Theme = "CompanyA"

На рис. 14.43 показан пример темы, определенной в листинге 14.1. На рис. 14.44 показано переключение темы на компанию В.

Совет

Вы можете делать изменения в файлах тем или обложек без перекомпиляции ва­шего сайта. Эти изменения будут просто применены при следующем обновлении в браузере. Описание: C:\Users\Артём\Desktop\media\image357.jpeg

Для настройки темы одного элемента управления используйте атрибут skinid элемента управления. Этот ID может быть настроен на конкретную обложку внутри файла обложек. Определение обложки будет иметь такой же идентификатор обложки, что и использованный внутри кода разметки. Разметка выглядит следующим образом:

<asp:SomeControl runat="server" ID="ControlID" SkinID="MySkinId" />

Вы можете настроить идентификатор обложки в разметке или при помощи окна свойств Properties для данного элемента управления в визуальном конструкторе. Это окно выдаст выпадающий список обложек, которые доступны для данного типа элемента управления. Вы можете также настроить идентификатор обложки программным путем. Вот пример:

SomeControl.Skinid = "MySkinld"

Создание пользовательского интерфейса, конфигурируемого пользователем
Работа с элементами управления WebParts
WebPartManager
Создание страницы WebParts
Определение зон

Добавить комментарий


Защитный код
Обновить

© 2017 www.visualstudios.ru. Все права защищены.