EventTrigger Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Представляет триггер, который применяет набор действий в ответ на событие.
public ref class EventTrigger : System::Windows::TriggerBase, System::Windows::Markup::IAddChild
[System.Windows.Markup.ContentProperty("Actions")]
public class EventTrigger : System.Windows.TriggerBase, System.Windows.Markup.IAddChild
[<System.Windows.Markup.ContentProperty("Actions")>]
type EventTrigger = class
inherit TriggerBase
interface IAddChild
Public Class EventTrigger
Inherits TriggerBase
Implements IAddChild
- Наследование
- Атрибуты
- Реализации
Примеры
В этом примере показано, как использовать триггеры событий в стиле для анимации MouseEnter событий FrameworkElementи MouseLeave объекта . В этом примере Style имеет TargetType значение Rectangle. Поэтому нет необходимости квалифицировать MouseEnter
имена событий и MouseLeave
с именем класса.
<Style TargetType="Rectangle">
<Setter Property="Width" Value="50" />
<Setter Property="Height" Value="50" />
<Setter Property="Margin" Value="20" />
<Setter Property="HorizontalAlignment" Value="Left" />
<Style.Triggers>
<EventTrigger RoutedEvent="MouseEnter">
<BeginStoryboard>
<Storyboard>
<DoubleAnimation To="300" Duration="0:0:1.5"
AccelerationRatio="0.10" DecelerationRatio="0.25"
Storyboard.TargetProperty="(Canvas.Width)" />
</Storyboard>
</BeginStoryboard>
</EventTrigger>
<EventTrigger RoutedEvent="MouseLeave">
<BeginStoryboard>
<Storyboard>
<DoubleAnimation Duration="0:0:1.5"
AccelerationRatio="0.10" DecelerationRatio="0.25"
Storyboard.TargetProperty="(Canvas.Width)" />
</Storyboard>
</BeginStoryboard>
</EventTrigger>
</Style.Triggers>
</Style>
Комментарии
Trigger Объекты имеют Settersсвойства , EnterActionsи ExitActions , которые применяют изменения или действия на основе состояния определенных свойств, в то время как EventTrigger объекты запускают набор при возникновении указанного Actions перенаправленного события. Например, можно использовать EventTrigger для запуска набора анимаций, когда указатель мыши находится на определенном элементе управления пользовательского интерфейса. В отличие от Trigger, EventTrigger не имеет понятия завершения состояния, поэтому действие не будет отменено, когда условие, вызвавщее событие, больше не будет истинным.
Обратите внимание, что при использовании EventTriggerнеобходимо выбрать события, которые не влияют на поведение элемента управления. Такие элементы управления, как Button или TextBox выполняют определенные действия с событиями ввода пользователем, такими как щелчки мышью и события клавиатуры. Например, если вы настраиваете кнопку и пытаетесь задать MouseDown событие в качестве RoutedEventEventTriggerобъекта , никогда не применяется, EventTrigger так как событие сначала обрабатывается кнопкой. Вместо этого можно использовать PreviewMouseDown событие или другое событие.
При использовании привязки данных, если вы используете TargetUpdated событие, необходимо задать NotifyOnTargetUpdated для объекта значение Binding , true
чтобы событие было создано.
Добавление дочернего TriggerAction элемента к объекту EventTrigger неявно добавляет его в TriggerActionCollection для EventTrigger объекта .
Конструкторы
EventTrigger() |
Инициализирует новый экземпляр класса EventTrigger. |
EventTrigger(RoutedEvent) |
Инициализирует новый экземпляр класса EventTrigger указанным событием. |
Свойства
Actions |
Получает коллекцию действий, которые применяются при возникновении события. |
DependencyObjectType |
Возвращает объект DependencyObjectType , который заключает в оболочку тип среды CLR этого экземпляра. (Унаследовано от DependencyObject) |
Dispatcher |
Возвращает объект Dispatcher, с которым связан этот объект DispatcherObject. (Унаследовано от DispatcherObject) |
EnterActions |
Получает коллекцию объектов TriggerAction, применяемую, когда срабатывает триггер. Это свойство не применяется к классу EventTrigger. (Унаследовано от TriggerBase) |
ExitActions |
Получает коллекцию объектов TriggerAction, применяемую, когда объект триггера становится неактивным. Это свойство не применяется к классу EventTrigger. (Унаследовано от TriggerBase) |
IsSealed |
Получает значение, указывающее, является ли этот экземпляр в данный момент запечатанным (доступным только для чтения). (Унаследовано от DependencyObject) |
RoutedEvent |
Возвращает или задает параметр RoutedEvent, который активирует этот триггер. |
SourceName |
Получает или задает имя объекта с событием, которое активирует данный триггер. Используется только триггерами элементов или шаблонов. |
Методы
AddChild(Object) |
Добавляет указанный объект в коллекцию Actions текущего триггера событий. |
AddText(String) |
Данный метод не поддерживается и приводит к исключению. |
CheckAccess() |
Определяет, имеет ли вызывающий поток доступ к этому DispatcherObject. (Унаследовано от DispatcherObject) |
ClearValue(DependencyProperty) |
Очищает локальное значение свойства. Очищаемое свойство задается идентификатором DependencyProperty. (Унаследовано от DependencyObject) |
ClearValue(DependencyPropertyKey) |
Очищает локальное значение доступного только для чтения свойства. Очищаемое свойство задается ключом DependencyPropertyKey. (Унаследовано от DependencyObject) |
CoerceValue(DependencyProperty) |
Приводит значение указанного свойства зависимостей. Это осуществляется путем вызова какой-либо функции CoerceValueCallback, указанной в метаданных свойства зависимостей, которое существует в вызывающем объекте DependencyObject. (Унаследовано от DependencyObject) |
Equals(Object) |
Определяет, является ли указанный DependencyObject эквивалентом текущего DependencyObject. (Унаследовано от DependencyObject) |
GetHashCode() |
Возвращает хэш-код для данного объекта DependencyObject. (Унаследовано от DependencyObject) |
GetLocalValueEnumerator() |
Создает специализированный перечислитель для определения свойств зависимостей, которые локально установили значения для данного DependencyObject. (Унаследовано от DependencyObject) |
GetType() |
Возвращает объект Type для текущего экземпляра. (Унаследовано от Object) |
GetValue(DependencyProperty) |
Возвращает текущее действующее значение свойства зависимостей в этом экземпляре DependencyObject. (Унаследовано от DependencyObject) |
InvalidateProperty(DependencyProperty) |
Повторно вычисляет действующее значение для указанного свойства зависимостей. (Унаследовано от DependencyObject) |
MemberwiseClone() |
Создает неполную копию текущего объекта Object. (Унаследовано от Object) |
OnPropertyChanged(DependencyPropertyChangedEventArgs) |
Вызывается каждый раз, когда обновляется действительное значение любого свойства зависимостей для данного DependencyObject. Конкретное измененное свойство зависимостей сообщается в данных события. (Унаследовано от DependencyObject) |
ReadLocalValue(DependencyProperty) |
Возвращает локальное значение свойства зависимостей, если таковое существует. (Унаследовано от DependencyObject) |
SetCurrentValue(DependencyProperty, Object) |
Задает значение свойства зависимостей, не меняя источник значения. (Унаследовано от DependencyObject) |
SetValue(DependencyProperty, Object) |
Задает локальное значение свойства зависимостей, указанного идентификатором этого свойства. (Унаследовано от DependencyObject) |
SetValue(DependencyPropertyKey, Object) |
Задает локальное значение свойства зависимости только для чтения, определяемое идентификатором DependencyPropertyKey свойства зависимостей. (Унаследовано от DependencyObject) |
ShouldSerializeActions() |
Возвращает значение, указывающее, должны ли процессы сериализации сериализовать действующее значение свойства Actions в экземплярах этого класса. |
ShouldSerializeProperty(DependencyProperty) |
Возвращает значение, которое указывает, следует ли процессам сериализации выполнять сериализацию значения для предоставленного свойства зависимостей. (Унаследовано от DependencyObject) |
ToString() |
Возвращает строку, представляющую текущий объект. (Унаследовано от Object) |
VerifyAccess() |
Обеспечивает наличие у вызывающего потока доступ к этому DispatcherObject. (Унаследовано от DispatcherObject) |
Явные реализации интерфейса
IAddChild.AddChild(Object) |
Добавляет дочерний объект. |
IAddChild.AddText(String) |
Добавляет к объекту текстовое содержимое узла. |