Freigeben über


DataTrigger Klasse

Definition

Eine Klasse, die eine Bedingung für eine beliebige Bindung darstellt und eine Liste mit Setter-Objekten, die angewendet werden, wenn die Bedingung erfüllt ist.

[Xamarin.Forms.ContentProperty("Setters")]
[Xamarin.Forms.Xaml.AcceptEmptyServiceProvider]
public sealed class DataTrigger : Xamarin.Forms.TriggerBase, Xamarin.Forms.Xaml.IValueProvider
type DataTrigger = class
    inherit TriggerBase
    interface IValueProvider
Vererbung
System.Object
DataTrigger
Attribute
Implementiert

Hinweise

Die DataTrigger -Klasse eignet sich zum Überprüfen von Werten für andere Steuerelemente sowie für jede Eigenschaft des Steuerelements, dem sie hinzugefügt wurde. Das heißt, der Standardbindungskontext ist das Steuerelement, dem es hinzugefügt wurde.

Im folgenden XML-Beispiel wird der Benutzer aufgefordert, das Geheimnis einzugeben, d. h. "Die Textfarbe ist grün". Wenn der Benutzer "The" eingegeben hat, ändert sich die Farbe des Eintragstexts in Rot. Wenn der Benutzer das Geheimnis abgeschlossen hat, wird der Beschriftungstext grün. Der Code wird auf die Standardfarbe zurückgesetzt, wenn der Benutzer dann das Geheimnis bearbeitet. In diesem Beispiel wird gezeigt, wie Sie eine Bindung an das einschließende Steuerelement (Entry from Entry) und an ein arbitäres Steuerelement (Entry from Label) herstellen.

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

Konstruktoren

DataTrigger(Type)

Initialisiert eine neue Instanz von DataTrigger.

Eigenschaften

Binding

Ruft die Bindung ab, deren Wert mit der Value-Eigenschaft verglichen wird, um zu bestimmen, wann die Setter aufgerufen werden sollen oder legt diese Bindung fest.

BindingContext

Ruft das Objekt ab, das die Eigenschaften enthält, die von den gebundenen Eigenschaften dieses BindableObject-Objekts angezielt werden, oder legt es fest.

(Geerbt von BindableObject)
Dispatcher

Eine Klasse, die eine Bedingung für eine beliebige Bindung darstellt und eine Liste mit Setter-Objekten, die angewendet werden, wenn die Bedingung erfüllt ist.

(Geerbt von BindableObject)
EnterActions

Ruft die Liste mit TriggerAction-Objekten ab, die ausgelöst werden, wenn die Triggerbedingung erfüllt ist. Wird für die EventTrigger-Klasse ignoriert.

(Geerbt von TriggerBase)
ExitActions

Ruft die Liste mit TriggerAction-Objekten ab, die ausgelöst wird, wenn die Triggerbedingung nicht mehr erfüllt ist. Wird für die EventTrigger-Klasse ignoriert.

(Geerbt von TriggerBase)
IsSealed

Ruft einen Wert ab, der angibt, ob der Trigger versiegelt ist.

(Geerbt von TriggerBase)
Setters

Ruft die Liste der Setter -Objekte ab, die angewendet werden, wenn die von der Binding -Eigenschaft benannte Bindung gleich Valueist.

TargetType

Der Typ des Objekts, an das dieses TriggerBase-Objekt angefügt werden kann.

(Geerbt von TriggerBase)
Value

Ruft den Wert der nach der Binding-Eigenschaft benannten Bindung ab, bei dem die Setter angewendet werden oder legt diesen Wert fest.

Methoden

ApplyBindings()

Wendet die Bindungen auf BindingContext an.

(Geerbt von BindableObject)
ClearValue(BindableProperty)

Löscht alle Werte, die von SetValue für property festgelegt wurden.

(Geerbt von BindableObject)
ClearValue(BindablePropertyKey)

Löscht alle Werte, die von SetValue für die Eigenschaft festgelegt wurden, die durch propertyKey ermittelt wird.

(Geerbt von BindableObject)
CoerceValue(BindableProperty)

Eine Klasse, die eine Bedingung für eine beliebige Bindung darstellt und eine Liste mit Setter-Objekten, die angewendet werden, wenn die Bedingung erfüllt ist.

(Geerbt von BindableObject)
CoerceValue(BindablePropertyKey)

Eine Klasse, die eine Bedingung für eine beliebige Bindung darstellt und eine Liste mit Setter-Objekten, die angewendet werden, wenn die Bedingung erfüllt ist.

(Geerbt von BindableObject)
GetValue(BindableProperty)

Gibt den Wert zurück, der in der BindableProperty-Klasse enthalten ist.

(Geerbt von BindableObject)
GetValues(BindableProperty, BindableProperty, BindableProperty)
Veraltet.

Für die interne Verwendung durch die Xamarin.Forms-Plattform.

(Geerbt von BindableObject)
GetValues(BindableProperty, BindableProperty)
Veraltet.

Für die interne Verwendung durch die Xamarin.Forms-Plattform.

(Geerbt von BindableObject)
IsSet(BindableProperty)

Gibt true zurück, wenn die Zieleigenschaft vorhanden ist und festgelegt wurde.

(Geerbt von BindableObject)
OnBindingContextChanged()

Überschreibt diese Methode, um eine Aktion auszuführen, wenn die BindingContext-Klasse geändert wird.

(Geerbt von BindableObject)
OnPropertyChanged(String)

Ruft diese Methode aus einer untergeordneten Klasse auf, um eine Benachrichtigung anzuzeigen, dass eine Eigenschaft geändert wurde.

(Geerbt von BindableObject)
OnPropertyChanging(String)

Ruft diese Methode aus einer untergeordneten Klasse auf, um eine Benachrichtigung anzuzeigen, dass eine Eigenschaft geändert wird.

(Geerbt von BindableObject)
RemoveBinding(BindableProperty)

Entfernt eine zuvor festgelegte Bindung.

(Geerbt von BindableObject)
SetBinding(BindableProperty, BindingBase)

Weist eine Bindung einer Eigenschaft zu.

(Geerbt von BindableObject)
SetValue(BindableProperty, Object)

Legt den Wert der angegebenen Eigenschaft fest.

(Geerbt von BindableObject)
SetValue(BindablePropertyKey, Object)

Legt den Wert von „propertyKey“ fest.

(Geerbt von BindableObject)
SetValueCore(BindableProperty, Object, SetValueFlags)

Für die interne Verwendung durch die Xamarin.Forms-Plattform.

(Geerbt von BindableObject)
UnapplyBindings()

Hebt alle zuvor festgelegten Bindungen auf.

(Geerbt von BindableObject)

Ereignisse

BindingContextChanged

Wird ausgelöst, wenn sich die BindingContext-Eigenschaft ändert.

(Geerbt von BindableObject)
PropertyChanged

Wird ausgelöst, wenn eine Eigenschaft geändert wurde.

(Geerbt von BindableObject)
PropertyChanging

Wird ausgelöst, wenn eine Eigenschaft geändert wird.

(Geerbt von BindableObject)

Explizite Schnittstellenimplementierungen

IDynamicResourceHandler.SetDynamicResource(BindableProperty, String)

Für die interne Verwendung durch die Xamarin.Forms-Plattform.

(Geerbt von BindableObject)
IValueProvider.ProvideValue(IServiceProvider)

Für die interne Verwendung durch die XAML-Infrastruktur.

Erweiterungsmethoden

GetPropertyIfSet<T>(BindableObject, BindableProperty, T)

Eine Klasse, die eine Bedingung für eine beliebige Bindung darstellt und eine Liste mit Setter-Objekten, die angewendet werden, wenn die Bedingung erfüllt ist.

SetAppThemeColor(BindableObject, BindableProperty, Color, Color)

Eine Klasse, die eine Bedingung für eine beliebige Bindung darstellt und eine Liste mit Setter-Objekten, die angewendet werden, wenn die Bedingung erfüllt ist.

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

Erstellt eine Bindung mit einer Eigenschaft und wendet diese an.

SetBinding<TSource>(BindableObject, BindableProperty, Expression<Func<TSource,Object>>, BindingMode, IValueConverter, String)
Veraltet.

Erstellt eine Bindung aus einem Ausdruck und wendet diese an.

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

Eine Klasse, die eine Bedingung für eine beliebige Bindung darstellt und eine Liste mit Setter-Objekten, die angewendet werden, wenn die Bedingung erfüllt ist.

Gilt für: