Compartir a través de


MultiTrigger Clase

Definición

Clase que representa una lista de condiciones de propiedades y enlaces, y una lista de los establecedores que se aplican cuando se cumplen todas las condiciones de la lista.

public ref class MultiTrigger sealed : Microsoft::Maui::Controls::TriggerBase
[Microsoft.Maui.Controls.ContentProperty("Setters")]
public sealed class MultiTrigger : Microsoft.Maui.Controls.TriggerBase
[<Microsoft.Maui.Controls.ContentProperty("Setters")>]
type MultiTrigger = class
    inherit TriggerBase
Public NotInheritable Class MultiTrigger
Inherits TriggerBase
Herencia
Atributos

Comentarios

Los desarrolladores pueden usar para MultiTrigger comparar los valores de propiedad en el control que lo contiene mediante Trigger objetos o en cualquier propiedad enlazada (incluidos los del control envolvente) mediante BindingCondition objetos . Se pueden mezclar en la misma Conditions lista.

El ejemplo XML siguiente, cuando se agrega a una aplicación Microsoft.Maui.Controls con el espacio de nombres de proyecto correcto, crea una interfaz de usuario que sugiere que el usuario escribe un secreto y alterna un modificador para comprobar si el secreto es correcto. Si el usuario escribe "El color del texto es verde" y cambia a Switch su On posición, el texto escrito por el usuario en el Entry se convierte en verde. Si el texto se modifica a algo distinto del secreto o el modificador se alterna en su Off posición, el texto vuelve al color predeterminado.

<?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:PropertyConditionDemo"
             x:Class="PropertyConditionDemo.PropertyConditionDemoPage">
<StackLayout VerticalOptions="Center">
<Label Text="Do you know the secret?"
               VerticalOptions="Center"
               HorizontalOptions="Center" />
<Entry Placeholder="Type the secret!"
               VerticalOptions="Center"
               HorizontalOptions="Center">
<Entry.Triggers>
<MultiTrigger TargetType="Entry" >
<MultiTrigger.Conditions>
<PropertyCondition Property="Text" Value="The text color is green" />
<BindingCondition Binding="{Binding Source={x:Reference checkSecret},
                                                            Path=IsToggled}"
                                          Value="true" />
</MultiTrigger.Conditions>
<Setter Property="TextColor"
                        Value="Color.Green" />
</MultiTrigger>
</Entry.Triggers>
</Entry>
<Label Text="Check the secret?"
               VerticalOptions="Center"
               HorizontalOptions="Center" />
<Switch x:Name="checkSecret"
                VerticalOptions="Center"
                HorizontalOptions="Center" />
</StackLayout>
</ContentPage>

Constructores

MultiTrigger(Type)

Inicializa una nueva instancia de MultiTrigger.

Propiedades

BindingContext

Obtiene o establece un objeto que contiene las propiedades destinadas a las propiedades enlazadas que pertenecen a este BindableObjectobjeto . Esta es una propiedad enlazable.

(Heredado de BindableObject)
Conditions

Obtiene la lista de condiciones que se deben cumplir para que se invoquen los establecedores de la lista Setters.

Dispatcher

Obtiene el distribuidor que estaba disponible cuando se creó este objeto enlazable; de lo contrario, intenta encontrar el distribuidor disponible más cercano (probablemente el de la ventana o la aplicación).

(Heredado de BindableObject)
EnterActions

Obtiene la lista de objetos TriggerAction que se invocará cuando se cumpla la condición del desencadenador. Se ignora para la clase EventTrigger

(Heredado de TriggerBase)
ExitActions

Obtiene la lista de objetos TriggerAction que se invocará después de que la condición del desencadenador ya no se cumpla. Se ignora para la clase EventTrigger

(Heredado de TriggerBase)
IsSealed

Obtiene un valor que indica si el desencadenador está sellado o no.

(Heredado de TriggerBase)
Setters

Obtiene la lista de objetos Setter que se aplicarán cuando se cumplan todas las condiciones de la lista en la propiedad Conditions.

TargetType

El tipo de objeto al que se puede adjuntar este objeto TriggerBase.

(Heredado de TriggerBase)

Métodos

ApplyBindings()

Aplica todos los enlaces actuales a BindingContext.

(Heredado de BindableObject)
ClearValue(BindableProperty)

Borra cualquier valor establecido previamente para una propiedad enlazable.

(Heredado de BindableObject)
ClearValue(BindablePropertyKey)

Borra cualquier valor establecido previamente para una propiedad enlazable, identificada por su clave.

(Heredado de BindableObject)
CoerceValue(BindableProperty)

Convierte el valor de la propiedad enlazable especificada. Para ello, se invoca BindableProperty.CoerceValueDelegate la propiedad enlazable especificada.

(Heredado de BindableObject)
CoerceValue(BindablePropertyKey)

Convierte el valor de la propiedad enlazable especificada. Para ello, se invoca BindableProperty.CoerceValueDelegate la propiedad enlazable especificada.

(Heredado de BindableObject)
GetValue(BindableProperty)

Devuelve el valor contenido en la propiedad enlazable especificada.

(Heredado de BindableObject)
IsSet(BindableProperty)

Determina si existe o no una propiedad enlazable y tiene un valor establecido.

(Heredado de BindableObject)
OnBindingContextChanged()

Genera el evento BindingContextChanged.

(Heredado de BindableObject)
OnPropertyChanged(String)

Genera el evento PropertyChanged.

(Heredado de BindableObject)
OnPropertyChanging(String)

Genera el evento PropertyChanging.

(Heredado de BindableObject)
RemoveBinding(BindableProperty)

Quita un enlace establecido previamente de una propiedad enlazable.

(Heredado de BindableObject)
SetBinding(BindableProperty, BindingBase)

Asigna un enlace a una propiedad enlazable.

(Heredado de BindableObject)
SetValue(BindableProperty, Object)

Establece el valor de la propiedad enlazable especificada.

(Heredado de BindableObject)
SetValue(BindablePropertyKey, Object)

Establece el valor de la propiedad enlazable especificada.

(Heredado de BindableObject)
UnapplyBindings()

Quita todos los enlaces actuales del contexto actual.

(Heredado de BindableObject)

Eventos

BindingContextChanged

Se produce cuando cambia el valor de la propiedad BindingContext.

(Heredado de BindableObject)
PropertyChanged

Se produce cuando un valor de propiedad cambia.

(Heredado de BindableObject)
PropertyChanging

Se produce cuando cambia el valor de una propiedad.

(Heredado de BindableObject)

Implementaciones de interfaz explícitas

IDynamicResourceHandler.SetDynamicResource(BindableProperty, String)

Clase que representa una lista de condiciones de propiedades y enlaces, y una lista de los establecedores que se aplican cuando se cumplen todas las condiciones de la lista.

(Heredado de BindableObject)

Métodos de extensión

GetPropertyIfSet<T>(BindableObject, BindableProperty, T)

Clase que representa una lista de condiciones de propiedades y enlaces, y una lista de los establecedores que se aplican cuando se cumplen todas las condiciones de la lista.

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

Clase que representa una lista de condiciones de propiedades y enlaces, y una lista de los establecedores que se aplican cuando se cumplen todas las condiciones de la lista.

SetAppThemeColor(BindableObject, BindableProperty, Color, Color)

Clase que representa una lista de condiciones de propiedades y enlaces, y una lista de los establecedores que se aplican cuando se cumplen todas las condiciones de la lista.

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

Crea y aplica un enlace a una propiedad.

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

Crea un enlace entre una propiedad en el objeto de origen y una propiedad en el objeto de destino.

Se aplica a

Consulte también