Compartilhar via


MultiTrigger Classe

Definição

Classe que representa uma lista de condições de associação e de propriedade e uma lista de setters aplicados quando todas as condições na lista são atendidas.

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
Herança
Atributos

Comentários

Os desenvolvedores podem usar um MultiTrigger para comparar com valores de propriedade no controle que o contém usando Trigger objetos ou em qualquer propriedade associada (incluindo aquelas no controle delimitador) usando BindingCondition objetos. Estes podem ser misturados na mesma Conditions lista.

O exemplo XML abaixo, quando adicionado a um aplicativo Microsoft.Maui.Controls com o namespace de projeto correto, cria uma interface do usuário que sugere que o usuário digite um segredo e alterne uma opção para verificar se o segredo está correto. Se o usuário digitar "A cor do texto é verde" e alternar para Switch sua On posição, o texto que o usuário digitou ficará Entry verde. Se o texto for alterado para algo diferente do segredo ou o Switch for alternado para sua Off posição, o texto retornará à cor padrão

<?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>

Construtores

MultiTrigger(Type)

Inicializa uma nova instância MultiTrigger.

Propriedades

BindingContext

Obtém ou define um objeto que contém as propriedades que serão direcionadas pelas propriedades associadas que pertencem a este BindableObject. Esta é uma propriedade associável.

(Herdado de BindableObject)
Conditions

Obtém a lista de condições que devem ser satisfeitas para os setters na lista Setters serem invocados.

Dispatcher

Obtém o dispatcher que estava disponível quando esse objeto associável foi criado, caso contrário, tenta encontrar o dispatcher disponível mais próximo (provavelmente o da janela/aplicativo).

(Herdado de BindableObject)
EnterActions

Obtém a lista de objetos TriggerAction que serão invocados quando a condição do gatilho for atendida. Ignorado para a classe EventTrigger.

(Herdado de TriggerBase)
ExitActions

Obtém a lista de objetos TriggerAction que serão invocados depois que a condição do gatilho não for mais atendida. Ignorado para a classe EventTrigger.

(Herdado de TriggerBase)
IsSealed

Obtém um valor que indica se o gatilho está ou não selado.

(Herdado de TriggerBase)
Setters

Obtém a lista de objetos Setter que serão aplicados quando a lista de condições na propriedade Conditions forem atendidas.

TargetType

O tipo de objeto ao qual este objeto TriggerBase pode ser anexado.

(Herdado de TriggerBase)

Métodos

ApplyBindings()

Aplica todas as associações atuais a BindingContext.

(Herdado de BindableObject)
ClearValue(BindableProperty)

Limpa qualquer valor definido anteriormente para uma propriedade associável.

(Herdado de BindableObject)
ClearValue(BindablePropertyKey)

Limpa qualquer valor definido anteriormente para uma propriedade associável, identificada por sua chave.

(Herdado de BindableObject)
CoerceValue(BindableProperty)

Força-se o valor da propriedade associável especificada. Isso é feito invocando BindableProperty.CoerceValueDelegate a propriedade associável especificada.

(Herdado de BindableObject)
CoerceValue(BindablePropertyKey)

Força-se o valor da propriedade associável especificada. Isso é feito invocando BindableProperty.CoerceValueDelegate a propriedade associável especificada.

(Herdado de BindableObject)
GetValue(BindableProperty)

Retorna o valor contido na propriedade associável fornecida.

(Herdado de BindableObject)
IsSet(BindableProperty)

Determina se existe ou não uma propriedade associável e tem um conjunto de valores.

(Herdado de BindableObject)
OnBindingContextChanged()

Aciona o evento BindingContextChanged.

(Herdado de BindableObject)
OnPropertyChanged(String)

Aciona o evento PropertyChanged.

(Herdado de BindableObject)
OnPropertyChanging(String)

Aciona o evento PropertyChanging.

(Herdado de BindableObject)
RemoveBinding(BindableProperty)

Remove uma associação definida anteriormente de uma propriedade associável.

(Herdado de BindableObject)
SetBinding(BindableProperty, BindingBase)

Atribui uma associação a uma propriedade associável.

(Herdado de BindableObject)
SetValue(BindableProperty, Object)

Define o valor da propriedade associável especificada.

(Herdado de BindableObject)
SetValue(BindablePropertyKey, Object)

Define o valor da propriedade associável especificada.

(Herdado de BindableObject)
UnapplyBindings()

Remove todas as associações atuais do contexto atual.

(Herdado de BindableObject)

Eventos

BindingContextChanged

Ocorre quando o valor da propriedade BindingContext muda.

(Herdado de BindableObject)
PropertyChanged

Ocorre quando um valor de propriedade é alterado.

(Herdado de BindableObject)
PropertyChanging

Ocorre quando um valor da propriedade está sendo alterado.

(Herdado de BindableObject)

Implantações explícitas de interface

IDynamicResourceHandler.SetDynamicResource(BindableProperty, String)

Classe que representa uma lista de condições de associação e de propriedade e uma lista de setters aplicados quando todas as condições na lista são atendidas.

(Herdado de BindableObject)

Métodos de Extensão

GetPropertyIfSet<T>(BindableObject, BindableProperty, T)

Classe que representa uma lista de condições de associação e de propriedade e uma lista de setters aplicados quando todas as condições na lista são atendidas.

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

Classe que representa uma lista de condições de associação e de propriedade e uma lista de setters aplicados quando todas as condições na lista são atendidas.

SetAppThemeColor(BindableObject, BindableProperty, Color, Color)

Classe que representa uma lista de condições de associação e de propriedade e uma lista de setters aplicados quando todas as condições na lista são atendidas.

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

Cria e aplica uma associação a uma propriedade.

SetBinding<TSource,TProperty>(BindableObject, BindableProperty, Func<TSource,TProperty>, BindingMode, IValueConverter, Object, String, Object, Object, Object)

Cria uma associação entre uma propriedade no objeto de origem e uma propriedade no objeto de destino.

Aplica-se a

Confira também