Trigger Classe
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Classe qui représente une condition de propriété et une action qui est effectuée quand la condition est remplie.
public ref class Trigger sealed : Microsoft::Maui::Controls::TriggerBase, Microsoft::Maui::Controls::Xaml::IValueProvider
[Microsoft.Maui.Controls.ContentProperty("Setters")]
[Microsoft.Maui.Controls.Xaml.AcceptEmptyServiceProvider]
public sealed class Trigger : Microsoft.Maui.Controls.TriggerBase, Microsoft.Maui.Controls.Xaml.IValueProvider
[<Microsoft.Maui.Controls.ContentProperty("Setters")>]
[<Microsoft.Maui.Controls.Xaml.AcceptEmptyServiceProvider>]
type Trigger = class
inherit TriggerBase
interface IValueProvider
Public NotInheritable Class Trigger
Inherits TriggerBase
Implements IValueProvider
- Héritage
- Attributs
- Implémente
Remarques
La Trigger classe convient pour vérifier les valeurs d’une 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é. Pour établir une liaison sur des contrôles autres que le parent, les développeurs doivent utiliser la classe, à la DataTrigger place.
L’exemple XML ci-dessous invite l’utilisateur à taper le secret, c’est-à-dire « La couleur de texte est rouge ». Lorsque l’utilisateur a tapé le secret, le texte d’entrée change de couleur en rouge. Le code est retourné à la couleur par défaut si l’utilisateur modifie ensuite le texte pour différer du secret. Cet exemple montre comment établir une liaison au contrôle englobant avec un déclencheur.
<?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="Tell me the secret"
VerticalOptions="Center"
HorizontalOptions="Center" />
<Entry Placeholder="Type the secret here."
VerticalOptions="Center"
HorizontalOptions="Center">
<Entry.Triggers>
<Trigger TargetType="Entry"
Property="Text"
Value="The text color is red">
<Setter Property="TextColor" Value="Red" />
</Trigger>
</Entry.Triggers>
</Entry>
</StackLayout>
</ContentPage>
L’exemple ci-dessous montre comment les développeurs peuvent utiliser un déclencheur pour répondre aux événements et mettre à jour la valeur d’une propriété de contrôle à l’aide TriggerAction<T> de classes. L’exemple invite l’utilisateur à répondre à une question sur la couleur du texte, puis appelle ColorTriggerAction
à tourner le texte en rouge lorsque l’utilisateur tape « La couleur de texte est rouge ». Les développeurs doivent noter que, bien que cet exemple ne revient pas à la couleur par défaut lorsque l’utilisateur continue à modifier la chaîne, le développeur peut également implémenter et spécifier une action de sortie pour obtenir ce résultat.
Avec la classe ColorTriggerAction ci-dessous définie dans l’espace TriggerDemo
de noms :
public class ColorTriggerAction : TriggerAction<Entry>
{
protected override void Invoke(Entry sender)
{
sender.TextColor = Color.Red;
}
}
le développeur peut utiliser le code XAML ci-dessous pour créer la page qui répond à la chaîne secrète en modifiant la couleur de la Entry zone de texte en rouge.
<?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="What color is "The text"?"
VerticalOptions="Center"
HorizontalOptions="Center" />
<Entry Placeholder="Type answer here."
VerticalOptions="Center"
HorizontalOptions="Center"
BackgroundColor="White">
<Entry.Triggers>
<Trigger TargetType="Entry"
Property="Text"
Value="The text is red" >
<Trigger.EnterActions>
<local:ColorTriggerAction />
</Trigger.EnterActions>
</Trigger>
</Entry.Triggers>
</Entry>
</StackLayout>
</ContentPage>
Constructeurs
Trigger(Type) |
Initialise une nouvelle instance de Trigger. |
Propriétés
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) |
Property |
Obtient ou définit la propriété dont la valeur est comparée à Value pour déterminer quand appeler les setters. |
Setters |
Obtient la liste d’objets Setter à appliquer quand la propriété nommée par Property 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 propriété, nommée par la propriété Property, 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 de propriété et une action qui est effectuée quand la condition est remplie. (Hérité de BindableObject) |
IValueProvider.ProvideValue(IServiceProvider) |
Classe qui représente une condition de propriété et une action qui est effectuée quand la condition est remplie. |
Méthodes d’extension
GetPropertyIfSet<T>(BindableObject, BindableProperty, T) |
Classe qui représente une condition de propriété et une action qui est effectuée quand la condition est remplie. |
SetAppTheme<T>(BindableObject, BindableProperty, T, T) |
Classe qui représente une condition de propriété et une action qui est effectuée quand la condition est remplie. |
SetAppThemeColor(BindableObject, BindableProperty, Color, Color) |
Classe qui représente une condition de propriété et une action qui est effectuée 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. |