Главная » Silverlight » Дополнительные поведения

0

Теперь вы знаете все, что необходимо для создания собственных действий, тригге­ров и поведений. Однако вам редко придется создавать их самому. На практике разра­ботчики чаще используют готовые классы поведений, вставляя их в приложения. Это позволяет быстро определить функциональность пользовательского интерфейса, не на­писав ни единой строки кода С#. Если же вы используете Expression Blend, то для это­го вам не понадобится писать ни единой строки разметки XAML.

Как вы уже знаете, базовая сборка System.Windows . Interactivity.dll не содержит готовых действий и поведений. В ней определен единственный базовый класс тригге­ра EventTrigger.

Сборка Microsoft.Expression.Interactions.dll более практична. Она содержит набор готовых действий (табл. 12.1), триггеров (табл. 12.2) и поведений (табл. 12.3).

Таблица 12.1. Классы действий, представленные в сборке Microsoft.Expression. Interactions.dll

Действие

Описание

ChangePropertyAction

Присвоение любому свойству любого значения с помощью рефлексии

GoToStateAction

Переключение элемента управления в заданное визуальное состояние; визуальные состояния определяются в шаблонах (см. главу 13)

Окончание табл. 12.1

Действие

Описание

HyperlinkAction

Переход к новой странице, указанной в заданном URI

RemoveElementAction

Удаление элемента с пользовательского интерфейса

PlaySoundActiOn

Работает так же, как действие PlaySoundAction, рассмотренное ранее; добавлены возможности устанавливать громкость и выводить MediaElement как невидимый элемент Popup (если на странице есть место для объекта

MediaElement)

ControlStoryboardAction

Запуск, паузы, остановка и возобновление анимации

Таблица 12.2. Классы триггеров, представленные в сборке Microsoft.Expression. Interactions.dll

Триггер

Описание

KeyTrigger

Срабатывает при нажатии клавиши

TimerTrigger

Срабатывает периодически с заданным интервалом

StoryboardCompletedTrigger

Срабатывает при завершении анимации

Таблица 12.3. Классы поведений, представленные в сборке Microsoft.Expression. Interactions.dll

Поведение

Описание

MouseDragElementBehavior

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

FluidMoveBehavior

Наблюдение за элементом или набором дочерних элементов; обнаруживает изменения в контейнере; когда происходит изменение, поведение плавно перемещает элемент в новую позицию с помощью анимации

Чтобы найти больше поведений, посетите сайт проекта Expression Blend Samples по адресу www.expressionblend.codeplex.com и галерею поведений по адресу www.gal­lery, expression .microsoft .com/site/items/behaviors.

Резюме

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

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

Источник: Мак-Дональд, Мэтью. Silverlight 3 с примерами на С# для профессионалов. : Пер. с англ. —- М. : ООО «И.Д. Вильяме», 2010. — 656 с. : ил. — Парал. тит. англ.

По теме:

  • Комментарии