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 и MouseLeave событий объекта FrameworkElement. В этом примере 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объекты имеют SettersEnterActionsсвойства, ExitActions которые применяют изменения или действия на основе состояния определенных свойств, а EventTrigger объекты запускают набор Actions при возникновении указанного перенаправленного события. Например, может потребоваться запустить EventTrigger набор анимаций, когда указатель мыши находится на определенном элементе управления пользовательского интерфейса. В отличие Triggerот того, EventTrigger не имеет понятия прекращения состояния, поэтому действие не будет отменено после того, как условие, вызвавшее событие, больше не является истинным.

Обратите внимание, что при использовании EventTriggerнеобходимо выбрать события, которые не влияют на внутреннее поведение элемента управления. Такие элементы управления, как или Button выполнение определенных действий для событий ввода пользователем, таких как TextBox щелчки мыши и события клавиатуры. Например, если вы выполняете стили кнопки и пытаетесь задать MouseDown событие как RoutedEvent объект EventTrigger, никогда не применяется, EventTrigger так как событие сначала обрабатывается кнопкой. Вместо этого можно использовать PreviewMouseDown событие или другое событие.

При использовании привязки данных, если вы используете TargetUpdated событие, необходимо задать NotifyOnTargetUpdated значение Binding объекта для того, чтобы true событие было поднято.

TriggerAction Добавление дочернего EventTrigger объекта в объект неявно добавляет его в TriggerActionCollectionEventTrigger объект.

Конструкторы

Имя Описание
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)

Добавляет текстовое содержимое узла в объект.

Применяется к

См. также раздел