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


Condition Класс

Определение

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

public ref class Condition sealed
public ref class Condition sealed : System::ComponentModel::ISupportInitialize
public sealed class Condition
[System.Windows.Markup.XamlSetMarkupExtension("ReceiveMarkupExtension")]
[System.Windows.Markup.XamlSetTypeConverter("ReceiveTypeConverter")]
public sealed class Condition : System.ComponentModel.ISupportInitialize
type Condition = class
[<System.Windows.Markup.XamlSetMarkupExtension("ReceiveMarkupExtension")>]
[<System.Windows.Markup.XamlSetTypeConverter("ReceiveTypeConverter")>]
type Condition = class
    interface ISupportInitialize
Public NotInheritable Class Condition
Public NotInheritable Class Condition
Implements ISupportInitialize
Наследование
Condition
Атрибуты
Реализации

Примеры

В следующем примере содержится два MultiTriggerфрагмента. Первый задает значение свойства MinWidth , если свойство HasItems имеет значение false, а свойство WidthAuto. Второй аналогичен, но для свойства MinHeight .

<Style.Triggers>
  <Trigger Property="IsEnabled" Value="false">
    <Setter Property="Background" Value="#EEEEEE" />
  </Trigger>

  <MultiTrigger>
    <MultiTrigger.Conditions>
      <Condition Property="HasItems" Value="false" />
      <Condition Property="Width" Value="Auto" />
    </MultiTrigger.Conditions>
    <Setter Property="MinWidth" Value="120"/>
  </MultiTrigger>

  <MultiTrigger>
    <MultiTrigger.Conditions>
      <Condition Property="HasItems" Value="false" />
      <Condition Property="Height" Value="Auto" />
    </MultiTrigger.Conditions>
    <Setter Property="MinHeight" Value="95"/>
  </MultiTrigger>
</Style.Triggers>

Binding Примеры условий, используемых в объекте, см. в свойствеMultiDataTrigger.

Комментарии

MultiTriggers и MultiDataTriggers позволяют задавать значения свойств на основе набора условий. Условие удовлетворяется, если значение свойства элемента или элемента данных соответствует указанному Value (проверка равенства ссылок). Если выполнены все указанные условия, то применяется триггер.

Ниже приведен список случаев, вызывающих исключение:

  • Для каждого Conditionиз них можно задать Property только свойство или Binding свойство. Если заданы оба свойства, создается исключение.

  • Если используется для Condition объекта MultiTrigger, Property свойство не может иметь значение NULL.

  • Если используется для Condition объекта MultiDataTrigger, Binding свойство не может иметь значение NULL.

  • Исключение возникает, если указанный Value тип недействителен для указанного типа Property.

Обратите внимание, что если для Condition объекта задано MultiTriggerзначение , Property необходимо задать свойства и Value свойства. Если это для MultiDataTriggerобъекта, Binding необходимо задать свойства и Value свойства.

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

Имя Описание
Condition()

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

Condition(BindingBase, Object)

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

Condition(DependencyProperty, Object, String)

Инициализирует новый экземпляр Condition класса с указанным свойством, значением и именем исходного объекта.

Condition(DependencyProperty, Object)

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

Свойства

Имя Описание
Binding

Возвращает или задает привязку, указывающую свойство условия. Это применимо только к MultiDataTrigger объектам.

Property

Возвращает или задает свойство условия. Это применимо только к MultiTrigger объектам.

SourceName

Возвращает или задает имя объекта со свойством, которое приводит к применению связанных наборов. Это применимо только к MultiTrigger объектам.

Value

Возвращает или задает значение условия.

Методы

Имя Описание
Equals(Object)

Определяет, равен ли указанный объект текущему объекту.

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

Служит хэш-функцией по умолчанию.

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

Возвращает Type текущего экземпляра.

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

Создает неглубокую копию текущей Object.

(Унаследовано от Object)
ReceiveMarkupExtension(Object, XamlSetMarkupExtensionEventArgs)

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

ReceiveTypeConverter(Object, XamlSetTypeConverterEventArgs)

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

ToString()

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

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

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

Имя Описание
ISupportInitialize.BeginInit()

Сигнализирует объекту о запуске инициализации.

ISupportInitialize.EndInit()

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

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