Поделиться через


Trigger Класс

Определение

Представляет триггер, который применяет значения свойств или выполняет действия условно.

public ref class Trigger : System::Windows::TriggerBase, System::Windows::Markup::IAddChild
public ref class Trigger : System::Windows::TriggerBase, System::ComponentModel::ISupportInitialize, System::Windows::Markup::IAddChild
[System.Windows.Markup.ContentProperty("Setters")]
public class Trigger : System.Windows.TriggerBase, System.Windows.Markup.IAddChild
[System.Windows.Markup.ContentProperty("Setters")]
[System.Windows.Markup.XamlSetTypeConverter("ReceiveTypeConverter")]
public class Trigger : System.Windows.TriggerBase, System.ComponentModel.ISupportInitialize, System.Windows.Markup.IAddChild
[<System.Windows.Markup.ContentProperty("Setters")>]
type Trigger = class
    inherit TriggerBase
    interface IAddChild
[<System.Windows.Markup.ContentProperty("Setters")>]
[<System.Windows.Markup.XamlSetTypeConverter("ReceiveTypeConverter")>]
type Trigger = class
    inherit TriggerBase
    interface IAddChild
    interface ISupportInitialize
[<System.Windows.Markup.ContentProperty("Setters")>]
[<System.Windows.Markup.XamlSetTypeConverter("ReceiveTypeConverter")>]
type Trigger = class
    inherit TriggerBase
    interface ISupportInitialize
    interface IAddChild
Public Class Trigger
Inherits TriggerBase
Implements IAddChild
Public Class Trigger
Inherits TriggerBase
Implements IAddChild, ISupportInitialize
Наследование
Атрибуты
Реализации

Примеры

В следующем примере показан именованный Style объект, доступный для Button элементов управления. Определяет StyleTrigger элемент , который изменяет Foreground свойство кнопки, IsPressed если свойство имеет значение true.

<Style x:Key="Triggers" TargetType="Button">
    <Style.Triggers>
    <Trigger Property="IsPressed" Value="true">
        <Setter Property = "Foreground" Value="Green"/>
    </Trigger>
    </Style.Triggers>
</Style>

Комментарии

WPF определяет свойства, соответствующие действиям конечных пользователей, например IsMouseOver свойство , которое имеет значение true , когда пользователь навевает курсор на UIElement или соответствующее IsMouseOver свойство ContentElementобъекта . Представление действий конечных пользователей в значениях свойств вместе с элементом Trigger позволяет стилям WPF изменять значения свойств на основе этих действий конечного пользователя из разметки.

Свойства, измененные триггерами, автоматически сбрасываются до предыдущего значения, когда активированное условие больше не выполняется. Триггеры оптимизированы для временных состояний, которые должны измениться и вернуться в исходное состояние, например IsPressed в Button и IsSelected в ListBoxItem. Интересующий Property объект должен быть свойством зависимостей.

Обратите внимание, что необходимо указать свойства Property и Value в объекте , Trigger чтобы триггер был осмысленным. Если одно или оба свойства не заданы, создается исключение.

Свойство SettersTrigger объекта может состоять только из Setter объектов . Добавление дочернего Setter элемента к объекту Trigger неявно добавляет его в SetterBaseCollection для Trigger объекта . EventSetterобъекты не поддерживаются; поддерживает EventSetter только Style.Setters объекты.

Существуют и другие типы триггеров. MultiTrigger позволяет применять изменения на основе состояния нескольких свойств. EventTrigger позволяет применять изменения при возникновении события. DataTrigger и MultiDataTrigger предназначены для свойств, привязанных к данным.

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

Trigger()

Инициализирует новый экземпляр класса Trigger.

Свойства

DependencyObjectType

Возвращает объект DependencyObjectType , который заключает в оболочку тип среды CLR этого экземпляра.

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

Возвращает объект Dispatcher, с которым связан этот объект DispatcherObject.

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

Получает коллекцию объектов TriggerAction, применяемую, когда срабатывает триггер. Это свойство не применяется к классу EventTrigger.

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

Получает коллекцию объектов TriggerAction, применяемую, когда объект триггера становится неактивным. Это свойство не применяется к классу EventTrigger.

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

Получает значение, указывающее, является ли этот экземпляр в данный момент запечатанным (доступным только для чтения).

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

Возвращает или задает свойство, которое возвращает значение, сравниваемое со свойством Value триггера. Данное сравнение является проверкой равенства ссылок.

Setters

Возвращает коллекцию объектов Setter, описывающих значения свойств, которые должны применяться, если выполняется определенное условие.

SourceName

Получает или задает имя объекта со свойством, которое вызывает применение соответствующих переключателей.

Value

Возвращает или задает значение для сравнения с значением свойства элемента. Данное сравнение является проверкой равенства ссылок.

Методы

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)
ReceiveTypeConverter(Object, XamlSetTypeConverterEventArgs)

Обрабатывает случаи, когда преобразователь типов предоставляет значение для свойства объекта Trigger.

SetCurrentValue(DependencyProperty, Object)

Задает значение свойства зависимостей, не меняя источник значения.

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

Задает локальное значение свойства зависимостей, указанного идентификатором этого свойства.

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

Задает локальное значение свойства зависимости только для чтения, определяемое идентификатором DependencyPropertyKey свойства зависимостей.

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

Возвращает значение, которое указывает, следует ли процессам сериализации выполнять сериализацию значения для предоставленного свойства зависимостей.

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

Возвращает строку, представляющую текущий объект.

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

Обеспечивает наличие у вызывающего потока доступ к этому DispatcherObject.

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

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

IAddChild.AddChild(Object)

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

IAddChild.AddText(String)

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

ISupportInitialize.BeginInit()

Подает сигнал объекту о начале инициализации.

ISupportInitialize.EndInit()

Подает объекту сигнал о завершении инициализации.

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