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


MultiTrigger Класс

Определение

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

public ref class MultiTrigger sealed : Microsoft::Maui::Controls::TriggerBase
[Microsoft.Maui.Controls.ContentProperty("Setters")]
public sealed class MultiTrigger : Microsoft.Maui.Controls.TriggerBase
[<Microsoft.Maui.Controls.ContentProperty("Setters")>]
type MultiTrigger = class
    inherit TriggerBase
Public NotInheritable Class MultiTrigger
Inherits TriggerBase
Наследование
Атрибуты

Комментарии

Разработчики могут использовать MultiTrigger для сравнения со значениями свойств в элементе управления, который его содержит, с помощью Trigger объектов , или с любым привязанным свойством (включая свойства во включаемом элементе управления) с помощью BindingCondition объектов . Их можно смешивать в одном списке Conditions .

В приведенном ниже примере XML при добавлении в приложение Microsoft.Maui.Controls с правильным пространством имен проекта создается пользовательский интерфейс, который предлагает пользователю ввести секрет и переключить переключатель, чтобы проверить правильность секрета. Если пользователь вводит "Цвет текста зеленый" и переключает Switch на свое On положение, текст, введенный пользователем, становится зеленым Entry . Если текст изменяется на что-то, отличное от секрета, или переключатель переключится на его Off позицию, текст возвращается к цвету по умолчанию

<?xml version="1.0" encoding="utf-8"?>
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms"
             xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
             xmlns:local="clr-namespace:PropertyConditionDemo"
             x:Class="PropertyConditionDemo.PropertyConditionDemoPage">
<StackLayout VerticalOptions="Center">
<Label Text="Do you know the secret?"
               VerticalOptions="Center"
               HorizontalOptions="Center" />
<Entry Placeholder="Type the secret!"
               VerticalOptions="Center"
               HorizontalOptions="Center">
<Entry.Triggers>
<MultiTrigger TargetType="Entry" >
<MultiTrigger.Conditions>
<PropertyCondition Property="Text" Value="The text color is green" />
<BindingCondition Binding="{Binding Source={x:Reference checkSecret},
                                                            Path=IsToggled}"
                                          Value="true" />
</MultiTrigger.Conditions>
<Setter Property="TextColor"
                        Value="Color.Green" />
</MultiTrigger>
</Entry.Triggers>
</Entry>
<Label Text="Check the secret?"
               VerticalOptions="Center"
               HorizontalOptions="Center" />
<Switch x:Name="checkSecret"
                VerticalOptions="Center"
                HorizontalOptions="Center" />
</StackLayout>
</ContentPage>

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

MultiTrigger(Type)

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

Свойства

BindingContext

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

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

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

Dispatcher

Возвращает диспетчер, который был доступен при создании привязываемого объекта, в противном случае пытается найти ближайший доступный диспетчер (вероятно, окно или приложение).

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

Возвращает список объектов TriggerAction, которые будут вызываться при соблюдении условия триггера. Игнорируется для класса EventTrigger.

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

Возвращает список объектов TriggerAction, которые будут вызываться, когда условие триггера больше не соблюдается. Игнорируется для класса EventTrigger.

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

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

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

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

TargetType

Тип объекта, к которому можно ли присоединить объект TriggerBase.

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

Методы

ApplyBindings()

Применяет все текущие привязки к BindingContext.

(Унаследовано от BindableObject)
ClearValue(BindableProperty)

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

(Унаследовано от BindableObject)
ClearValue(BindablePropertyKey)

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

(Унаследовано от BindableObject)
CoerceValue(BindableProperty)

Возвращает значение указанного привязываемого свойства. Это делается путем вызова BindableProperty.CoerceValueDelegate указанного привязываемого свойства.

(Унаследовано от BindableObject)
CoerceValue(BindablePropertyKey)

Возвращает значение указанного привязываемого свойства. Это делается путем вызова BindableProperty.CoerceValueDelegate указанного привязываемого свойства.

(Унаследовано от BindableObject)
GetValue(BindableProperty)

Возвращает значение, содержащееся в заданном привязываемом свойстве.

(Унаследовано от BindableObject)
IsSet(BindableProperty)

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

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

Вызывает событие BindingContextChanged.

(Унаследовано от BindableObject)
OnPropertyChanged(String)

Вызывает событие PropertyChanged.

(Унаследовано от BindableObject)
OnPropertyChanging(String)

Вызывает событие PropertyChanging.

(Унаследовано от BindableObject)
RemoveBinding(BindableProperty)

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

(Унаследовано от BindableObject)
SetBinding(BindableProperty, BindingBase)

Назначает привязку привязываемому свойству.

(Унаследовано от BindableObject)
SetValue(BindableProperty, Object)

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

(Унаследовано от BindableObject)
SetValue(BindablePropertyKey, Object)

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

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

Удаляет все текущие привязки из текущего контекста.

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

События

BindingContextChanged

Происходит при изменении значения свойства BindingContext.

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

Возникает при смене значения свойства.

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

Происходит при изменении значения свойства.

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

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

IDynamicResourceHandler.SetDynamicResource(BindableProperty, String)

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

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

Методы расширения

GetPropertyIfSet<T>(BindableObject, BindableProperty, T)

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

SetAppTheme<T>(BindableObject, BindableProperty, T, T)

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

SetAppThemeColor(BindableObject, BindableProperty, Color, Color)

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

SetBinding(BindableObject, BindableProperty, String, BindingMode, IValueConverter, String)

Создает и применяет привязку к свойству.

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

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