WPF и Silverlight поддерживают механизм Style, которые позволяют нам инкапсулировать значения свойств элементов управления в качестве повторно используемого ресурса. Мы можем хранить данные объявления стилей в отдельном файле и использовать их во многих элементах управления и страницах приложения (а также будем повторно использовать их в разных приложениях). Данная техника очень похожа на CSS с HTML в обычных ситуациях.
Обратите внимание: в дополнение к объявлению стандартных настроек свойств (Color, Font, Size, Margins и т.д.), стили в WPF и Silverlight также могут быть применены для определения и повторного использования Control Templates (шаблонов элементов управления),которые позволяют настраивать и адаптировать структуры элементов управления (в том числе поддерживают сценарии специализации, которые невозможно использовать с CSS в HTML). Мы обсудим шаблоны элементов управления (Control Templates) в седьмой части данной серии статей.
Для нашего приложения мы определим объявления наших стилей (Style) в файле App.xaml нашего проекта. Это позволит повторно использовать их на всех страницах и элементах управления в приложении:
Давайте начнем с инкапсуляции стилей для элемента управления <Border> (и заголовка <TextBlock>, содержащегося в нем):
Мы создаем два элемента Style в нашем файле App.xaml , который инкапсулирует настройки <Border> и <TextBlock> объявленные при помощи следующей разметки:
Обратите внимание как мы назначем каждому элементу Style уникальное значение "Key". Мы можем обновить наши элементы управления <Border> и <TextBlock> таким образом, чтобы они ссылались на данные стили при помощи данных значений ключей (Key). Для этого мы будем использовать XAML-свойство, названное "расширения разметки" ("markup extensions"). Расширения разметки используются в случаях, когда нам надо установить нелитеральные значения (другой пример использования данной возможности является выражение привязки данных).
Когда мы обновим другие элементы управления в нашем файле Page.xaml таким образом, чтобы они использовали стили, то мы получим файл со следующей разметкой:
Инкапсуляция настроек стилей подобным образом позволяет разработчикам сфокусироваться на семантике поведения приложения и также позволяет нам повторно использовать стили на созданных страницах и элементах управления.
Следующие шаги
Теперь, когда мы очистили разметку нашего файла Page.xaml при помощи ссылок Style, можно перейти к следующей ступени и настроить отображение данных.
В этой статье обсуждаются 12 вопросов, касающихся связывания, размещения, использования сервисов WCF, и как подключаться к базе данных при помощи Silverlight.
WPF и Silverlight,
Реализация шаблонов мастер страниц в Silverlight Есть несколько статей о том, как реализовать шаблон мастер страницы в Silverlight. Вопрос в том, действительно ли нам нужна возможность создавать шаблон мастер страницы в Silverlight. Если есть преимущества использования функции шаблона мастер страницы в ASP.NET, то нет причины, из-за которой Silverlight не мог бы использовать это преимущество...
WPF и Silverlight,
Элемент управления TreeView в Silverlight Элемент управления TreeView идеально подходит для отображения данных иерархической структуры. Несмотря на то, что вы можете выполнить многое при помощи данного элемента управления, в своей простейшей форме он достаточно легок в использовании, как только вы разберетесь в основной рекурсивности, требуемой им....