Практическое руководство. Применение тем ASP.NET

Visual Studio 2010

Обновлен: Ноябрь 2007

Темы можно применять к странице, веб-узлу или и ко всему содержимому. Установка темы на уровне веб-узла приводит к применению стилей и обложек ко всем страницам и элементам управления веб-узла до переопределения темы для отдельной страницы. Установка темы на уровне страницы приводит к применению стилей и обложек к странице и ко всем элементам управления на странице.

По умолчанию темы переопределяют локальные параметры элементов управления. Кроме того, можно задать тему как тему таблицы стилей, что приведет к применению темы только к тем параметрам элемента управления, которые не заданы явно для данного элемента управления.

Применение темы к веб-узлу

  1. В файле Web.config для соответствующего приложения задайте для элемента <pages> название темы, либо название глобальной темы или темы страницы, как показано в следующем примере:

    <configuration>
        <system.web>
            <pages theme="ThemeName" />
        </system.web>
    </configuration>
    
    0yy5hxdk.alert_note(ru-ru,VS.100).gifПримечание.

    Если название темы приложения совпадает с названием глобальной темы приложения, то тема страницы будет иметь больший приоритет.

  2. Чтобы задать тему как тему таблицы стилей (и сделать ее второстепенной по отношению к локальным параметрам элемента управления), вместо вышеуказанного способа задайте значение атрибута styleSheetTheme:

    <configuration>
        <system.web>
            <pages styleSheetTheme="Themename" />
        </system.web>
    </configuration>
    

Параметры темы в файле Web.config применяются ко всем веб-страницам ASP.NET, входящим в состав приложения. Параметры темы в файле Web.config соответствуют обычным соглашениям иерархии конфигурации. Например, чтобы применить тему к одному подмножеству страниц, необходимо разместить страницы в папке с принадлежащим им файлом Web.config или создать элемент <location> в корневом файле Web.config с указанием требуемой папки. Дополнительные сведения см. в разделе Настройка отдельных файлов и подкаталогов.

Применение темы к отдельной странице

  • Присвойте атрибуту Theme или StyleSheetTheme директивы @ Page название используемой темы, как показано в следующем примере:

    <%@ Page Theme="ThemeName" %>
    <%@ Page StyleSheetTheme="ThemeName" %>
    

    Тема и соответствующие стили и обложки будут применены только к заданной странице.

Обложки, заданные в теме, применяются ко всем экземплярам элемента управления приложения или страницы, к которой применена тема. В некоторых случаях, требуется применить определенный набор свойств к отдельному элементу управления. Это выполняется путем создания именованной обложки (запись в файле обложки с заданным значением свойства SkinID) и последующим применением по идентификатору к отдельным элементам управления.

Применение именованной обложки к элементу управления

  • Задайте значение свойства SkinID элемента управления, как показано в следующем примере:

    <asp:Calendar runat="server" ID="DatePicker" SkinID="SmallCalendar" />
    

    Если тема страницы не содержит обложку элемента управления, которая соответствует свойству SkinID, элемент управления использует обложку по умолчанию для данного типа элемента управления.

Показ: