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.

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
Vererbung
Attribute
Implementiert

Hinweise

Die DataTrigger Klasse eignet sich für die Überprüfung 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, den geheimen Schlüssel einzugeben, also "Die Textfarbe ist grün". Wenn der Benutzer "The" eingegeben hat, ändert sich die Farbe des Eintragstexts in Rot. Wenn der Benutzer den geheimen Schlüssel abgeschlossen hat, wird der Beschriftungstext grün. Der Code wird wieder auf die Standardfarbe zurückgedreht, wenn der Benutzer dann den geheimen Schlüssel bearbeitet. In diesem Beispiel wird gezeigt, wie eine Bindung an das eingeschlossene Steuerelement (Eintrag von Eintrag) und an ein arbitäres Steuerelement (Eintrag aus Beschriftung) gebunden wird.

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

Dient zum Abrufen oder Festlegen eines Objekts, das die Eigenschaften enthält, die von den gebundenen Eigenschaften bestimmt werden, die zu diesem BindableObjectGehören. Dies ist eine bindbare Eigenschaft.

(Geerbt von BindableObject)
Dispatcher

Ruft den Dispatcher ab, der verfügbar war, als dieses bindbare Objekt erstellt wurde, andernfalls versucht, den nächstgelegenen verfügbaren Verteiler (wahrscheinlich die Fenster/App's) zu finden.

(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 Bindung, die von der Binding Eigenschaft benannt wird, gleich Valuewird.

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 alle aktuellen Bindungen auf BindingContext.

(Geerbt von BindableObject)
ClearValue(BindableProperty)

Löscht alle Werte, die zuvor für eine bindungsfähige Eigenschaft festgelegt wurden.

(Geerbt von BindableObject)
ClearValue(BindablePropertyKey)

Löscht jeden Wert, der zuvor für eine bindungsfähige Eigenschaft festgelegt wurde, die durch den Schlüssel identifiziert wird.

(Geerbt von BindableObject)
CoerceValue(BindableProperty)

Wandelt den Wert der angegebenen bindungsfähigen Eigenschaft um. Dies erfolgt durch Aufrufen BindableProperty.CoerceValueDelegate der angegebenen bindungsfähigen Eigenschaft.

(Geerbt von BindableObject)
CoerceValue(BindablePropertyKey)

Wandelt den Wert der angegebenen bindungsfähigen Eigenschaft um. Dies erfolgt durch Aufrufen BindableProperty.CoerceValueDelegate der angegebenen bindungsfähigen Eigenschaft.

(Geerbt von BindableObject)
GetValue(BindableProperty)

Gibt den Wert zurück, der in der angegebenen bindungsfähigen Eigenschaft enthalten ist.

(Geerbt von BindableObject)
IsSet(BindableProperty)

Bestimmt, ob eine bindungsfähige Eigenschaft vorhanden ist und einen Wert festgelegt hat.

(Geerbt von BindableObject)
OnBindingContextChanged()

Löst das BindingContextChanged-Ereignis aus.

(Geerbt von BindableObject)
OnPropertyChanged(String)

Löst das PropertyChanged-Ereignis aus.

(Geerbt von BindableObject)
OnPropertyChanging(String)

Löst das PropertyChanging-Ereignis aus.

(Geerbt von BindableObject)
RemoveBinding(BindableProperty)

Entfernt eine zuvor festgelegte Bindung aus einer bindungsfähigen Eigenschaft.

(Geerbt von BindableObject)
SetBinding(BindableProperty, BindingBase)

Weist einer bindungsfähigen Eigenschaft eine Bindung zu.

(Geerbt von BindableObject)
SetValue(BindableProperty, Object)

Legt den Wert der angegebenen bindungsfähigen Eigenschaft fest.

(Geerbt von BindableObject)
SetValue(BindablePropertyKey, Object)

Legt den Wert der angegebenen bindungsfähigen Eigenschaft fest.

(Geerbt von BindableObject)
UnapplyBindings()

Entfernt alle aktuellen Bindungen aus dem aktuellen Kontext.

(Geerbt von BindableObject)

Ereignisse

BindingContextChanged

Tritt auf, wenn sich der Wert der BindingContext-Eigenschaft ändert.

(Geerbt von BindableObject)
PropertyChanged

Tritt auf, wenn sich ein Eigenschaftswert ändert.

(Geerbt von BindableObject)
PropertyChanging

Tritt auf, wenn sich ein Eigenschaftswert ändert.

(Geerbt von BindableObject)

Explizite Schnittstellenimplementierungen

IDynamicResourceHandler.SetDynamicResource(BindableProperty, String)

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)
IValueProvider.ProvideValue(IServiceProvider)

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.

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.

SetAppTheme<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.

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,TProperty>(BindableObject, BindableProperty, Func<TSource,TProperty>, BindingMode, IValueConverter, Object, String, Object, Object, Object)

Erstellt eine Bindung zwischen einer Eigenschaft für das Quellobjekt und einer Eigenschaft für das Zielobjekt.

Gilt für: