EventTrigger Класс

Определение

Представляет триггер, который применяет набор действий в ответ на событие.Represents a trigger that applies a set of actions in response to an event.

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
type EventTrigger = class
    inherit TriggerBase
    interface IAddChild
Public Class EventTrigger
Inherits TriggerBase
Implements IAddChild
Наследование
Атрибуты
Реализации

Примеры

В этом примере показано, как использовать триггеры событий в стиле для анимации MouseEnter событий MouseLeave FrameworkElementи.This example shows how to use event triggers in a style to animate the MouseEnter and MouseLeave events of a FrameworkElement. В этом примере Style параметр TargetType имеет значение Rectangle.In this example, the Style has the TargetType set to Rectangle. Таким образом, не нужно уточнять MouseEnter имена и MouseLeave имен событий именем класса.Therefore, there is no need to qualify the MouseEnter and MouseLeave event names with the class name.

<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 , которые применяют изменения или действия в зависимости от состояния определенных Actions свойств, а EventTrigger объекты запускают набор при возникновении указанного перенаправленного события.Trigger objects have the Setters, EnterActions, and ExitActions properties that apply changes or actions based on the state of certain properties, while EventTrigger objects start a set of Actions when a specified routed event occurs. Например, может потребоваться использовать EventTrigger для запуска набора анимации, если указатель мыши находится над определенным пользовательский интерфейсuser interface (UI) элементом управления.For example, you may want to use an EventTrigger to start a set of animations when the mouse pointer is over a certain пользовательский интерфейсuser interface (UI) control. В отличие Triggerот EventTrigger , не имеет концепции завершения состояния, поэтому действие не будет отменено, когда условие, вызвавшее событие, перестанет быть истинным.Unlike Trigger, EventTrigger has no concept of termination of state, so the action will not be undone once the condition that raised the event is no longer true.

Обратите внимание, что EventTriggerпри использовании необходимо выбрать события, не влияющие на поведение элемента управления.Note that when using an EventTrigger, you need to choose events that do not interfere with the inherent behavior of your control. Элементы управления, Button такие TextBox как или, выполняют определенные действия с событиями пользовательского ввода, такими как щелчок мыши и события клавиатуры.Controls such as Button or TextBox perform specific actions on user input events such as mouse clicks and keyboard events. Например, если вы выполняете стилизацию кнопки и пытаетесь задать MouseDown событие как объект RoutedEvent EventTrigger, значение EventTrigger никогда не применяется, так как событие сначала обрабатывается кнопкой.For example, if you are styling a button and try to set the MouseDown event as the RoutedEvent of an EventTrigger, the EventTrigger never gets applied because the event first gets handled by the button. Вместо этого можно использовать PreviewMouseDown событие или другое событие.Instead, you can use the PreviewMouseDown event or a different event.

При использовании привязки данных TargetUpdated , если вы используете событие, необходимо NotifyOnTargetUpdated задать для Binding объекта значение, чтобы true событие было создано.When using data binding, if you are using the TargetUpdated event, you must set the NotifyOnTargetUpdated value of your Binding object to true for the event to be raised.

Добавление дочернего EventTrigger объекта к объекту неявно добавляет EventTrigger его TriggerActionCollection в объект для объекта. TriggerActionAdding a TriggerAction child to an EventTrigger object implicitly adds it to the TriggerActionCollection for the EventTrigger object.

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

EventTrigger()

Инициализирует новый экземпляр класса EventTrigger.Initializes a new instance of the EventTrigger class.

EventTrigger(RoutedEvent)

Инициализирует новый экземпляр класса EventTrigger с указанным событием.Initializes a new instance of the EventTrigger class with the specified event.

Свойства

Actions

Получает коллекцию действий, которые применяются при возникновении события.Gets the collection of actions to apply when the event occurs.

DependencyObjectType

Возвращает DependencyObjectType, который создает обертку для типа CLRCLR данного экземпляра.Gets the DependencyObjectType that wraps the CLRCLR type of this instance.

(Унаследовано от DependencyObject)
Dispatcher

Возвращает объект Dispatcher, с которым связан этот объект DispatcherObject.Gets the Dispatcher this DispatcherObject is associated with.

(Унаследовано от DispatcherObject)
EnterActions

Получает коллекцию объектов TriggerAction, применяемую, когда срабатывает триггер.Gets a collection of TriggerAction objects to apply when the trigger object becomes active. Это свойство не применяется к классу EventTrigger.This property does not apply to the EventTrigger class.

(Унаследовано от TriggerBase)
ExitActions

Получает коллекцию объектов TriggerAction, применяемую, когда объект триггера становится неактивным.Gets a collection of TriggerAction objects to apply when the trigger object becomes inactive. Это свойство не применяется к классу EventTrigger.This property does not apply to the EventTrigger class.

(Унаследовано от TriggerBase)
IsSealed

Получает значение, указывающее, является ли этот экземпляр в данный момент запечатанным (доступным только для чтения).Gets a value that indicates whether this instance is currently sealed (read-only).

(Унаследовано от DependencyObject)
RoutedEvent

Возвращает или задает параметр RoutedEvent, который активирует этот триггер.Gets or sets the RoutedEvent that will activate this trigger.

SourceName

Получает или задает имя объекта с событием, которое активирует данный триггер.Gets or sets the name of the object with the event that activates this trigger. Используется только триггерами элементов или шаблонов.This is only used by element triggers or template triggers.

Методы

AddChild(Object)

Добавляет указанный объект в коллекцию Actions текущего триггера событий.Adds the specified object to the Actions collection of the current event trigger.

AddText(String)

Данный метод не поддерживается и приводит к исключению.This method is not supported and results in an exception.

CheckAccess()

Определяет, имеет ли вызывающий поток доступ к этому DispatcherObject.Determines whether the calling thread has access to this DispatcherObject.

(Унаследовано от DispatcherObject)
ClearValue(DependencyProperty)

Очищает локальное значение свойства.Clears the local value of a property. Очищаемое свойство задается идентификатором DependencyProperty.The property to be cleared is specified by a DependencyProperty identifier.

(Унаследовано от DependencyObject)
ClearValue(DependencyPropertyKey)

Очищает локальное значение свойства, доступного только для чтения.Clears the local value of a read-only property. Очищаемое свойство задается ключом DependencyPropertyKey.The property to be cleared is specified by a DependencyPropertyKey.

(Унаследовано от DependencyObject)
CoerceValue(DependencyProperty)

Приводит значение указанного свойства зависимостей.Coerces the value of the specified dependency property. Это осуществляется путем вызова какой-либо функции CoerceValueCallback, указанной в метаданных свойства зависимостей, которое существует в вызывающем объекте DependencyObject.This is accomplished by invoking any CoerceValueCallback function specified in property metadata for the dependency property as it exists on the calling DependencyObject.

(Унаследовано от DependencyObject)
Equals(Object)

Определяет, является ли указанный DependencyObject эквивалентом текущего DependencyObject.Determines whether a provided DependencyObject is equivalent to the current DependencyObject.

(Унаследовано от DependencyObject)
GetHashCode()

Возвращает хэш-код для данного объекта DependencyObject.Gets a hash code for this DependencyObject.

(Унаследовано от DependencyObject)
GetLocalValueEnumerator()

Создает специализированный перечислитель для определения свойств зависимостей, которые локально установили значения для данного DependencyObject.Creates a specialized enumerator for determining which dependency properties have locally set values on this DependencyObject.

(Унаследовано от DependencyObject)
GetType()

Возвращает объект Type для текущего экземпляра.Gets the Type of the current instance.

(Унаследовано от Object)
GetValue(DependencyProperty)

Возвращает текущее действующее значение свойства зависимостей в этом экземпляре DependencyObject.Returns the current effective value of a dependency property on this instance of a DependencyObject.

(Унаследовано от DependencyObject)
InvalidateProperty(DependencyProperty)

Повторно вычисляет действующее значение для указанного свойства зависимостей.Re-evaluates the effective value for the specified dependency property.

(Унаследовано от DependencyObject)
MemberwiseClone()

Создает неполную копию текущего объекта Object.Creates a shallow copy of the current Object.

(Унаследовано от Object)
OnPropertyChanged(DependencyPropertyChangedEventArgs)

Вызывается каждый раз, когда обновляется действительное значение любого свойства зависимостей для данного DependencyObject.Invoked whenever the effective value of any dependency property on this DependencyObject has been updated. Конкретное измененное свойство зависимостей сообщается в данных события.The specific dependency property that changed is reported in the event data.

(Унаследовано от DependencyObject)
ReadLocalValue(DependencyProperty)

Возвращает локальное значение свойства зависимостей, если таковое существует.Returns the local value of a dependency property, if it exists.

(Унаследовано от DependencyObject)
SetCurrentValue(DependencyProperty, Object)

Задает значение свойства зависимостей, не меняя источник значения.Sets the value of a dependency property without changing its value source.

(Унаследовано от DependencyObject)
SetValue(DependencyProperty, Object)

Задает локальное значение свойства зависимостей, указанного идентификатором этого свойства.Sets the local value of a dependency property, specified by its dependency property identifier.

(Унаследовано от DependencyObject)
SetValue(DependencyPropertyKey, Object)

Задает локальное значение свойства зависимости только для чтения, определяемое идентификатором DependencyPropertyKey свойства зависимостей.Sets the local value of a read-only dependency property, specified by the DependencyPropertyKey identifier of the dependency property.

(Унаследовано от DependencyObject)
ShouldSerializeActions()

Возвращает значение, указывающее, должны ли процессы сериализации сериализовать действующее значение свойства Actions в экземплярах этого класса.Returns whether serialization processes should serialize the effective value of the Actions property on instances of this class.

ShouldSerializeProperty(DependencyProperty)

Возвращает значение, которое указывает, следует ли процессам сериализации выполнять сериализацию значения для предоставленного свойства зависимостей.Returns a value that indicates whether serialization processes should serialize the value for the provided dependency property.

(Унаследовано от DependencyObject)
ToString()

Возвращает строку, представляющую текущий объект.Returns a string that represents the current object.

(Унаследовано от Object)
VerifyAccess()

Обеспечивает наличие у вызывающего потока доступ к этому DispatcherObject.Enforces that the calling thread has access to this DispatcherObject.

(Унаследовано от DispatcherObject)

Явные реализации интерфейса

IAddChild.AddChild(Object)

Добавляет дочерний объект.Adds a child object.

IAddChild.AddText(String)

Добавляет текстовое содержимое узла в объект.Adds the text content of a node to the object.

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

Дополнительно