Partager via


DataTrigger Classe

Définition

Classe qui représente une condition sur une liaison arbitraire, ainsi qu’une liste d’objets Setter à appliquer quand la condition est remplie.

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
Héritage
Attributs
Implémente

Remarques

La DataTrigger classe convient pour vérifier les valeurs sur d’autres contrôles, ainsi que toute propriété sur le contrôle auquel elle a été ajoutée. Autrement dit, son contexte de liaison par défaut est le contrôle auquel il a été ajouté.

L’exemple XML ci-dessous invite l’utilisateur à taper le secret, c’est-à-dire « La couleur de texte est verte ». Lorsque l’utilisateur a tapé « The », le texte d’entrée change de couleur en rouge. Lorsque l’utilisateur termine le secret, le texte d’étiquette devient vert. Le code est retourné à la couleur par défaut si l’utilisateur modifie ensuite le secret. Cet exemple montre comment établir une liaison au contrôle englobant (Entrée à partir de l’entrée) et à un contrôle arb unitaire (Entrée à partir d’une étiquette)

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

Constructeurs

DataTrigger(Type)

Initialise une nouvelle instance de DataTrigger.

Propriétés

Binding

Obtient ou définit la liaison dont la valeur est comparée à Value pour déterminer quand appeler les setters.

BindingContext

Obtient ou définit un objet qui contient les propriétés qui seront ciblées par les propriétés liées qui appartiennent à cet objet BindableObject. Il s’agit d’une propriété pouvant être liée.

(Hérité de BindableObject)
Dispatcher

Obtient le répartiteur disponible lorsque cet objet pouvant être lié a été créé, sinon tente de trouver le répartiteur disponible le plus proche (probablement les fenêtres/application).

(Hérité de BindableObject)
EnterActions

Obtient la liste des objets TriggerAction à appeler quand la condition de déclenchement est remplie. Ignoré pour la classe EventTrigger.

(Hérité de TriggerBase)
ExitActions

Obtient la liste des objets TriggerAction à appeler quand la condition de déclenchement n’est plus remplie. Ignoré pour la classe EventTrigger.

(Hérité de TriggerBase)
IsSealed

Obtient une valeur qui indique si le déclencheur est sealed ou non.

(Hérité de TriggerBase)
Setters

Obtient la liste des Setter objets qui seront appliqués lorsque la liaison nommée par la Binding propriété devient égale à Value.

TargetType

Type d’objet auquel cet objet TriggerBase peut être attaché.

(Hérité de TriggerBase)
Value

Obtient ou définit la valeur de la liaison, nommée par la propriété Binding, qui entraîne l’application des setters.

Méthodes

ApplyBindings()

Applique toutes les liaisons actuelles à BindingContext.

(Hérité de BindableObject)
ClearValue(BindableProperty)

Efface toute valeur définie précédemment pour une propriété pouvant être liée.

(Hérité de BindableObject)
ClearValue(BindablePropertyKey)

Efface toute valeur précédemment définie pour une propriété pouvant être liée, identifiée par sa clé.

(Hérité de BindableObject)
CoerceValue(BindableProperty)

Force la valeur de la propriété pouvant être liée spécifiée. Pour ce faire, appelez la propriété pouvant être BindableProperty.CoerceValueDelegate liée spécifiée.

(Hérité de BindableObject)
CoerceValue(BindablePropertyKey)

Force la valeur de la propriété pouvant être liée spécifiée. Pour ce faire, appelez la propriété pouvant être BindableProperty.CoerceValueDelegate liée spécifiée.

(Hérité de BindableObject)
GetValue(BindableProperty)

Retourne la valeur contenue dans la propriété pouvant être liée donnée.

(Hérité de BindableObject)
IsSet(BindableProperty)

Détermine si une propriété pouvant être liée existe ou non et a un jeu de valeurs.

(Hérité de BindableObject)
OnBindingContextChanged()

Déclenche l’événement BindingContextChanged.

(Hérité de BindableObject)
OnPropertyChanged(String)

Déclenche l’événement PropertyChanged.

(Hérité de BindableObject)
OnPropertyChanging(String)

Déclenche l’événement PropertyChanging.

(Hérité de BindableObject)
RemoveBinding(BindableProperty)

Supprime une liaison définie précédemment d’une propriété pouvant être liée.

(Hérité de BindableObject)
SetBinding(BindableProperty, BindingBase)

Affecte une liaison à une propriété pouvant être liée.

(Hérité de BindableObject)
SetValue(BindableProperty, Object)

Définit la valeur de la propriété pouvant être liée spécifiée.

(Hérité de BindableObject)
SetValue(BindablePropertyKey, Object)

Définit la valeur de la propriété pouvant être liée spécifiée.

(Hérité de BindableObject)
UnapplyBindings()

Supprime toutes les liaisons actuelles du contexte actuel.

(Hérité de BindableObject)

Événements

BindingContextChanged

Se produit quand la valeur de la propriété BindingContext change.

(Hérité de BindableObject)
PropertyChanged

Se produit lorsqu'une valeur de propriété change.

(Hérité de BindableObject)
PropertyChanging

Se produit en cas de modification d’une valeur de propriété.

(Hérité de BindableObject)

Implémentations d’interfaces explicites

IDynamicResourceHandler.SetDynamicResource(BindableProperty, String)

Classe qui représente une condition sur une liaison arbitraire, ainsi qu’une liste d’objets Setter à appliquer quand la condition est remplie.

(Hérité de BindableObject)
IValueProvider.ProvideValue(IServiceProvider)

Classe qui représente une condition sur une liaison arbitraire, ainsi qu’une liste d’objets Setter à appliquer quand la condition est remplie.

Méthodes d’extension

GetPropertyIfSet<T>(BindableObject, BindableProperty, T)

Classe qui représente une condition sur une liaison arbitraire, ainsi qu’une liste d’objets Setter à appliquer quand la condition est remplie.

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

Classe qui représente une condition sur une liaison arbitraire, ainsi qu’une liste d’objets Setter à appliquer quand la condition est remplie.

SetAppThemeColor(BindableObject, BindableProperty, Color, Color)

Classe qui représente une condition sur une liaison arbitraire, ainsi qu’une liste d’objets Setter à appliquer quand la condition est remplie.

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

Crée et applique une liaison à une propriété.

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

Crée une liaison entre une propriété sur l’objet source et une propriété sur l’objet cible.

S’applique à