Compartilhar via


DataTrigger Classe

Definição

A classe que representa uma condição em uma associação arbitrária, juntamente com uma lista de objetos Setter que serão aplicados quando a condição for atendida.

public ref class DataTrigger sealed : Microsoft::Maui::Controls::TriggerBase, Microsoft::Maui::Controls::Xaml::IValueProvider
[Microsoft.Maui.Controls.ContentProperty("Setters")]
[Microsoft.Maui.Controls.Xaml.AcceptEmptyServiceProvider]
public sealed class DataTrigger : Microsoft.Maui.Controls.TriggerBase, Microsoft.Maui.Controls.Xaml.IValueProvider
[<Microsoft.Maui.Controls.ContentProperty("Setters")>]
[<Microsoft.Maui.Controls.Xaml.AcceptEmptyServiceProvider>]
type DataTrigger = class
    inherit TriggerBase
    interface IValueProvider
Public NotInheritable Class DataTrigger
Inherits TriggerBase
Implements IValueProvider
Herança
Atributos
Implementações

Comentários

A DataTrigger classe é adequada para verificar valores em outros controles, bem como qualquer propriedade no controle ao qual ela foi adicionada. Ou seja, seu contexto de associação padrão é o controle ao qual ele foi adicionado.

O exemplo XML abaixo solicita que o usuário digite o segredo, que é "A cor do texto é verde". Quando o usuário digita "O", o texto de entrada muda de cor para vermelho. Quando o usuário conclui o segredo, o texto do rótulo fica verde. O código é voltado para a cor padrão se o usuário editar o segredo. Este exemplo mostra como associar ao controle delimitador (Entrada de Entrada) e a um controle arbitrário (Entrada de Rótulo)

<?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:TriggerDemo"
                x:Class="TriggerDemo.TriggerDemoPage">
<StackLayout VerticalOptions="Center">
<Label Text="Can you tell me the secret?" VerticalOptions="Center" HorizontalOptions="Center">
<Label.Triggers>
<DataTrigger TargetType="Label"
                    Binding="{Binding Source={x:Reference checkEntry},
                                      Path=Text}"
                    Value="The text color is green">
<Setter Property="TextColor" Value="Color.Green" />
</DataTrigger>
</Label.Triggers>
</Label>
<Entry Placeholder="Type the secret here." x:Name="checkEntry" VerticalOptions="Center" HorizontalOptions="Center">
<Entry.Triggers>
<DataTrigger TargetType="Entry"
                    Binding="{Binding Text}"
                    Value="The">
<Setter Property="TextColor" Value="Red" />
</DataTrigger>
</Entry.Triggers>
</Entry>
</StackLayout>
</ContentPage>

Construtores

DataTrigger(Type)

Inicializa uma nova instância DataTrigger.

Propriedades

Binding

Obtém ou define a associação cujo valor será comparado a Value para determinar quando invocar os setters.

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)
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 Setter objetos que serão aplicados quando a associação nomeada pela Binding propriedade se tornar igual a Value.

TargetType

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

(Herdado de TriggerBase)
Value

Obtém ou define o valor da propriedade, nomeada pela associação Binding, o que fará os setters serem aplicados.

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)

A classe que representa uma condição em uma associação arbitrária, juntamente com uma lista de objetos Setter que serão aplicados quando a condição for atendida.

(Herdado de BindableObject)
IValueProvider.ProvideValue(IServiceProvider)

A classe que representa uma condição em uma associação arbitrária, juntamente com uma lista de objetos Setter que serão aplicados quando a condição for atendida.

Métodos de Extensão

GetPropertyIfSet<T>(BindableObject, BindableProperty, T)

A classe que representa uma condição em uma associação arbitrária, juntamente com uma lista de objetos Setter que serão aplicados quando a condição for atendida.

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

A classe que representa uma condição em uma associação arbitrária, juntamente com uma lista de objetos Setter que serão aplicados quando a condição for atendida.

SetAppThemeColor(BindableObject, BindableProperty, Color, Color)

A classe que representa uma condição em uma associação arbitrária, juntamente com uma lista de objetos Setter que serão aplicados quando a condição for atendida.

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