DataTrigger Classe

Definizione

Classe che rappresenta una condizione in un'associazione arbitraria, insieme a un elenco di oggetti Setter che verranno applicati quando viene soddisfatta la condizione.

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
Ereditarietà
Attributi
Implementazioni

Commenti

La DataTrigger classe è adatta per il controllo dei valori su altri controlli, nonché per qualsiasi proprietà nel controllo a cui è stata aggiunta. Ovvero, il contesto di associazione predefinito è il controllo a cui è stato aggiunto.

L'esempio XML seguente richiede all'utente di digitare il segreto, ovvero "Il colore del testo è verde". Quando l'utente ha digitato "The", il testo entry cambia colore in rosso. Quando l'utente completa il segreto, il testo Etichetta diventa verde. Il codice viene restituito al colore predefinito se l'utente modifica il segreto. In questo esempio viene illustrato come eseguire l'associazione al controllo contenitore (Entry from Entry) e a un controllo arbitary (Entry from Label)

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

Costruttori

DataTrigger(Type)

Inizializza una nuova istanza di DataTrigger.

Proprietà

Binding

Ottiene o imposta l'associazione il cui valore verrà confrontato con Value per determinare quando richiamare i setter.

BindingContext

Ottiene o imposta un oggetto che contiene le proprietà di destinazione delle proprietà associate che appartengono a questo BindableObjectoggetto . Si tratta di una proprietà associabile.

(Ereditato da BindableObject)
Dispatcher

Ottiene il dispatcher disponibile al momento della creazione di questo oggetto associabile. In caso contrario, tenta di trovare il dispatcher più vicino disponibile (probabilmente quello della finestra o dell'app).

(Ereditato da BindableObject)
EnterActions

Ottiene l'elenco di oggetti TriggerAction che vengono richiamati quando si verifica la condizione di attivazione. Ignorato per la classe EventTrigger.

(Ereditato da TriggerBase)
ExitActions

Ottiene l'elenco di oggetti TriggerAction che vengono richiamati quando non si verifica più la condizione di attivazione. Ignorato per la classe EventTrigger.

(Ereditato da TriggerBase)
IsSealed

Ottiene un valore che indica se il trigger è Sealed.

(Ereditato da TriggerBase)
Setters

Ottiene l'elenco di Setter oggetti che verranno applicati quando l'associazione denominata dalla Binding proprietà diventa uguale a Value.

TargetType

Il tipo di oggetto a cui questo oggetto TriggerBase può essere associato.

(Ereditato da TriggerBase)
Value

Ottiene o imposta il valore dell'associazione denominata dalla proprietà Binding, che determina l'applicazione dei setter.

Metodi

ApplyBindings()

Applica tutte le associazioni correnti a BindingContext.

(Ereditato da BindableObject)
ClearValue(BindableProperty)

Cancella qualsiasi valore impostato in precedenza per una proprietà associabile.

(Ereditato da BindableObject)
ClearValue(BindablePropertyKey)

Cancella qualsiasi valore impostato in precedenza per una proprietà associabile, identificata dalla relativa chiave.

(Ereditato da BindableObject)
CoerceValue(BindableProperty)

Forza il valore della proprietà associabile specificata. Questa operazione viene eseguita richiamando BindableProperty.CoerceValueDelegate la proprietà associabile specificata.

(Ereditato da BindableObject)
CoerceValue(BindablePropertyKey)

Forza il valore della proprietà associabile specificata. Questa operazione viene eseguita richiamando BindableProperty.CoerceValueDelegate la proprietà associabile specificata.

(Ereditato da BindableObject)
GetValue(BindableProperty)

Restituisce il valore contenuto nella proprietà associabile specificata.

(Ereditato da BindableObject)
IsSet(BindableProperty)

Determina se esiste o meno una proprietà associabile e ha un valore impostato.

(Ereditato da BindableObject)
OnBindingContextChanged()

Genera l'evento BindingContextChanged.

(Ereditato da BindableObject)
OnPropertyChanged(String)

Genera l'evento PropertyChanged.

(Ereditato da BindableObject)
OnPropertyChanging(String)

Genera l'evento PropertyChanging.

(Ereditato da BindableObject)
RemoveBinding(BindableProperty)

Rimuove un'associazione impostata in precedenza da una proprietà associabile.

(Ereditato da BindableObject)
SetBinding(BindableProperty, BindingBase)

Assegna un'associazione a una proprietà associabile.

(Ereditato da BindableObject)
SetValue(BindableProperty, Object)

Imposta il valore della proprietà associabile specificata.

(Ereditato da BindableObject)
SetValue(BindablePropertyKey, Object)

Imposta il valore della proprietà associabile specificata.

(Ereditato da BindableObject)
UnapplyBindings()

Rimuove tutte le associazioni correnti dal contesto corrente.

(Ereditato da BindableObject)

Eventi

BindingContextChanged

Si verifica quando il valore della proprietà BindingContext cambia.

(Ereditato da BindableObject)
PropertyChanged

Si verifica quando un valore della proprietà viene modificato.

(Ereditato da BindableObject)
PropertyChanging

Si verifica quando il valore di una proprietà cambia.

(Ereditato da BindableObject)

Implementazioni dell'interfaccia esplicita

IDynamicResourceHandler.SetDynamicResource(BindableProperty, String)

Classe che rappresenta una condizione in un'associazione arbitraria, insieme a un elenco di oggetti Setter che verranno applicati quando viene soddisfatta la condizione.

(Ereditato da BindableObject)
IValueProvider.ProvideValue(IServiceProvider)

Classe che rappresenta una condizione in un'associazione arbitraria, insieme a un elenco di oggetti Setter che verranno applicati quando viene soddisfatta la condizione.

Metodi di estensione

GetPropertyIfSet<T>(BindableObject, BindableProperty, T)

Classe che rappresenta una condizione in un'associazione arbitraria, insieme a un elenco di oggetti Setter che verranno applicati quando viene soddisfatta la condizione.

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

Classe che rappresenta una condizione in un'associazione arbitraria, insieme a un elenco di oggetti Setter che verranno applicati quando viene soddisfatta la condizione.

SetAppThemeColor(BindableObject, BindableProperty, Color, Color)

Classe che rappresenta una condizione in un'associazione arbitraria, insieme a un elenco di oggetti Setter che verranno applicati quando viene soddisfatta la condizione.

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

Crea un'associazione e la applica a una proprietà.

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

Crea un'associazione tra una proprietà nell'oggetto di origine e una proprietà nell'oggetto di destinazione.

Si applica a