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.
[Xamarin.Forms.ContentProperty("Setters")]
[Xamarin.Forms.Xaml.AcceptEmptyServiceProvider]
public sealed class Trigger : Xamarin.Forms.TriggerBase, Xamarin.Forms.Xaml.IValueProvider
type Trigger = class
inherit TriggerBase
interface IValueProvider
- Héritage
- Attributs
- Implémente
Remarques
La Trigger classe est appropriée 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, qui est « La couleur du texte est rouge ». Lorsque l’utilisateur a tapé le secret, le texte de l’entrée devient rouge. Le code est retourné à la couleur par défaut si l’utilisateur modifie ensuite le texte pour qu’il diffère du secret. Cet exemple montre comment lier 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
à le rendre rouge lorsque l’utilisateur tape « La couleur du texte est rouge ». Les développeurs doivent noter que, bien que cet exemple ne remplace pas le texte par 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 de TriggerDemo
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 l’objet qui contient les propriétés qui seront ciblées par les propriétés liées appartenant à ce BindableObject. (Hérité de BindableObject) |
Dispatcher |
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) |
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 les liaisons à BindingContext. (Hérité de BindableObject) |
ClearValue(BindableProperty) |
Efface toute valeur définie par SetValue pour |
ClearValue(BindablePropertyKey) |
Efface toute valeur définie par SetValue pour la propriété qui est identifiée par |
CoerceValue(BindableProperty) |
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) |
CoerceValue(BindablePropertyKey) |
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) |
GetValue(BindableProperty) |
Retourne la valeur qui est contenue dans BindableProperty. (Hérité de BindableObject) |
GetValues(BindableProperty, BindableProperty, BindableProperty) |
Obsolète.
Pour un usage interne par la plateforme Xamarin.Forms. (Hérité de BindableObject) |
GetValues(BindableProperty, BindableProperty) |
Obsolète.
Pour un usage interne par la plateforme Xamarin.Forms. (Hérité de BindableObject) |
IsSet(BindableProperty) |
Retourne |
OnBindingContextChanged() |
Substituez cette méthode pour exécuter une action lorsque le BindingContext change. (Hérité de BindableObject) |
OnPropertyChanged(String) |
Appelez cette méthode à partir d’une classe enfant pour avertir qu’un changement s’est produit au niveau d’une propriété. (Hérité de BindableObject) |
OnPropertyChanging(String) |
Appelez cette méthode à partir d’une classe enfant pour avertir qu’un changement va se produire au niveau d’une propriété. (Hérité de BindableObject) |
RemoveBinding(BindableProperty) |
Supprime une liaison précédemment définie. (Hérité de BindableObject) |
SetBinding(BindableProperty, BindingBase) |
Affecte une liaison à une propriété. (Hérité de BindableObject) |
SetValue(BindableProperty, Object) |
Définit la valeur de la propriété spécifiée. (Hérité de BindableObject) |
SetValue(BindablePropertyKey, Object) |
Définit la valeur de propertyKey. (Hérité de BindableObject) |
SetValueCore(BindableProperty, Object, SetValueFlags) |
Pour un usage interne par la plateforme Xamarin.Forms. (Hérité de BindableObject) |
UnapplyBindings() |
Supprime toutes les liaisons précédemment définies. (Hérité de BindableObject) |
Événements
BindingContextChanged |
Déclenché chaque fois que la propriété BindingContext est modifiée. (Hérité de BindableObject) |
PropertyChanged |
Déclenché lorsqu’une propriété a été modifiée. (Hérité de BindableObject) |
PropertyChanging |
Déclenché lorsqu’une propriété est sur le point d’être modifiée. (Hérité de BindableObject) |
Implémentations d’interfaces explicites
IDynamicResourceHandler.SetDynamicResource(BindableProperty, String) |
Pour un usage interne par la plateforme Xamarin.Forms. (Hérité de BindableObject) |
IValueProvider.ProvideValue(IServiceProvider) |
Pour un usage interne par la plateforme Xamarin.Forms. |
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. |
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>(BindableObject, BindableProperty, Expression<Func<TSource,Object>>, BindingMode, IValueConverter, String) |
Obsolète.
Crée et applique une liaison à partir d’une expression. |
SetOnAppTheme<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. |