Dela via


DataTrigger Klass

Definition

En utlösare som aktiverar setters när ett bundet värde matchar ett angivet värde.

public ref class DataTrigger sealed : Microsoft::Maui::Controls::TriggerBase
public ref class DataTrigger sealed : Microsoft::Maui::Controls::TriggerBase, Microsoft::Maui::Controls::Xaml::IValueProvider
[Microsoft.Maui.Controls.ContentProperty("Setters")]
public sealed class DataTrigger : Microsoft.Maui.Controls.TriggerBase
[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")>]
type DataTrigger = class
    inherit TriggerBase
[<Microsoft.Maui.Controls.ContentProperty("Setters")>]
[<Microsoft.Maui.Controls.Xaml.AcceptEmptyServiceProvider>]
type DataTrigger = class
    inherit TriggerBase
    interface IValueProvider
Public NotInheritable Class DataTrigger
Inherits TriggerBase
Public NotInheritable Class DataTrigger
Inherits TriggerBase
Implements IValueProvider
Arv
Attribut
Implementerar

Anmärkningar

Klassen DataTrigger är lämplig för att kontrollera värden för andra kontroller, samt alla egenskaper för kontrollen som den har lagts till i. Dess standardbindningskontext är den kontroll som den har lagts till i.

I XML-exemplet nedan uppmanas användaren att skriva in hemligheten, dvs. "Textfärgen är grön". När användaren har skrivit "The" ändrar postens text färg till röd. När användaren slutför hemligheten blir etiketttexten grön. Koden återställs till standardfärgen om användaren sedan redigerar hemligheten. Det här exemplet visar hur du binder till den omslutande kontrollen (Entry from Entry) och till en arbitary-kontroll (Entry from Label)

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

Konstruktörer

Namn Beskrivning
DataTrigger(Type)

Initierar en ny DataTrigger instans.

Egenskaper

Namn Beskrivning
Binding

Hämtar eller anger bindningen vars värde ska jämföras med för att Value avgöra när utlösaren ska aktiveras.

BindingContext

Hämtar eller anger ett objekt som innehåller de egenskaper som ska vara mål för de bundna egenskaper som tillhör den här BindableObject. Det här är en bindbar egenskap.

(Ärvt från BindableObject)
Dispatcher

Hämtar den dispatcher som var tillgänglig när det här bindbara objektet skapades, annars försöker hitta närmaste tillgängliga dispatcher (förmodligen fönstrets/appens).

(Ärvt från BindableObject)
EnterActions

Hämtar samlingen av TriggerAction objekt som ska anropas när utlösarvillkoret blir sant.

(Ärvt från TriggerBase)
ExitActions

Hämtar samlingen av TriggerAction objekt som ska anropas när utlösarvillkoret blir falskt.

(Ärvt från TriggerBase)
IsSealed

Hämtar ett värde som anger om den här utlösaren har kopplats till ett element och inte längre kan ändras.

(Ärvt från TriggerBase)
Setters

Hämtar den samling Setter objekt som ska tillämpas när utlösarvillkoret uppfylls.

TargetType

Hämtar den typ av objekt som utlösaren kan kopplas till.

(Ärvt från TriggerBase)
Value

Hämtar eller anger det värde som ska jämföras med Binding för att avgöra när utlösaren ska aktiveras.

Metoder

Namn Beskrivning
ApplyBindings()

Tillämpar alla aktuella bindningar på BindingContext.

(Ärvt från BindableObject)
ClearValue(BindableProperty)

Rensar alla värden som tidigare har angetts för en bindbar egenskap.

(Ärvt från BindableObject)
ClearValue(BindablePropertyKey)

Rensar alla värden som tidigare har angetts för en bindbar egenskap som identifieras av dess nyckel.

(Ärvt från BindableObject)
CoerceValue(BindableProperty)

Tvingar fram värdet för den angivna bindbara egenskapen. Detta görs genom att BindableProperty.CoerceValueDelegate anropa den angivna bindbara egenskapen.

(Ärvt från BindableObject)
CoerceValue(BindablePropertyKey)

Tvingar fram värdet för den angivna bindbara egenskapen. Detta görs genom att BindableProperty.CoerceValueDelegate anropa den angivna bindbara egenskapen.

(Ärvt från BindableObject)
GetValue(BindableProperty)

Returnerar värdet som finns i den angivna bindbara egenskapen.

(Ärvt från BindableObject)
IsSet(BindableProperty)

Avgör om en bindbar egenskap finns och har en värdeuppsättning.

(Ärvt från BindableObject)
OnBindingContextChanged()

Genererar händelsen BindingContextChanged .

(Ärvt från BindableObject)
OnPropertyChanged(String)

Genererar händelsen PropertyChanged .

(Ärvt från BindableObject)
OnPropertyChanging(String)

Genererar händelsen PropertyChanging .

(Ärvt från BindableObject)
RemoveBinding(BindableProperty)

Tar bort en tidigare uppsättning bindning från en bindbar egenskap.

(Ärvt från BindableObject)
SetBinding(BindableProperty, BindingBase)

Tilldelar en bindning till en bindbar egenskap.

(Ärvt från BindableObject)
SetValue(BindableProperty, Object)

Anger värdet för den angivna bindbara egenskapen.

(Ärvt från BindableObject)
SetValue(BindablePropertyKey, Object)

Anger värdet för den angivna bindbara egenskapen.

(Ärvt från BindableObject)
UnapplyBindings()

Tar bort alla aktuella bindningar från den aktuella kontexten.

(Ärvt från BindableObject)

Evenemang

Namn Beskrivning
BindingContextChanged

Inträffar när värdet för BindingContext egenskapen ändras.

(Ärvt från BindableObject)
PropertyChanged

Inträffar när ett egenskapsvärde ändras.

(Ärvt från BindableObject)
PropertyChanging

Inträffar när ett egenskapsvärde ändras.

(Ärvt från BindableObject)

Explicita gränssnittsimplementationer

Namn Beskrivning
IDynamicResourceHandler.SetDynamicResource(BindableProperty, String)

En utlösare som aktiverar setters när ett bundet värde matchar ett angivet värde.

(Ärvt från BindableObject)
IValueProvider.ProvideValue(IServiceProvider)

En utlösare som aktiverar setters när ett bundet värde matchar ett angivet värde.

Utvidgningsmetoder

Namn Beskrivning
GetPropertyIfSet<T>(BindableObject, BindableProperty, T)

En utlösare som aktiverar setters när ett bundet värde matchar ett angivet värde.

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

En utlösare som aktiverar setters när ett bundet värde matchar ett angivet värde.

SetAppThemeColor(BindableObject, BindableProperty, Color, Color)

En utlösare som aktiverar setters när ett bundet värde matchar ett angivet värde.

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

Skapar och tillämpar en bindning på en egenskap.

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

Skapar en bindning mellan en egenskap i källobjektet och en egenskap för målobjektet.

Gäller för