AdaptiveTrigger Clase

Definición

Representa una regla declarativa que aplica estados visuales en función de las propiedades de la ventana.

/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class AdaptiveTrigger : StateTriggerBase
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public class AdaptiveTrigger : StateTriggerBase
Public Class AdaptiveTrigger
Inherits StateTriggerBase
<AdaptiveTrigger .../>
Herencia
Object IInspectable DependencyObject StateTriggerBase AdaptiveTrigger
Atributos

Requisitos de Windows

Familia de dispositivos
Windows 10 (se introdujo en la versión 10.0.10240.0)
API contract
Windows.Foundation.UniversalApiContract (se introdujo en la versión v1.0)

Ejemplos

Sugerencia

Para obtener más información, instrucciones de diseño y ejemplos de código, consulta Diseños dinámicos con XAML.

Si tienes instalada la aplicación WinUI 2 Gallery , abre la aplicación para ver los controles en acción.

En este ejemplo se muestra cómo usar la propiedad StateTriggers con adaptiveTrigger para crear una regla declarativa en el marcado XAML en función del tamaño de la ventana. De forma predeterminada, la orientación StackPanel es Vertical. Cuando el ancho de la ventana es >= 720 píxeles efectivos, se desencadena el cambio de VisualState y la orientación stackPanel se cambia a Horizontal.

<Page>
    <Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">
        <VisualStateManager.VisualStateGroups>
            <VisualStateGroup>
                <VisualState>
                    <VisualState.StateTriggers>
                    <!--VisualState to be triggered when window width is >=720 effective pixels.-->
                        <AdaptiveTrigger MinWindowWidth="720"/>
                    </VisualState.StateTriggers>

                    <VisualState.Setters>
                        <Setter Target="myPanel.Orientation" Value="Horizontal"/>
                    </VisualState.Setters>
                </VisualState>
            </VisualStateGroup>
        </VisualStateManager.VisualStateGroups>
        <StackPanel x:Name="myPanel" Orientation="Vertical">
            <TextBlock Text="This is a block of text. It is text block 1. " 
                       Style="{ThemeResource BodyTextBlockStyle}"/>
            <TextBlock Text="This is a block of text. It is text block 2. " 
                       Style="{ThemeResource BodyTextBlockStyle}"/>
            <TextBlock Text="This is a block of text. It is text block 3. " 
                       Style="{ThemeResource BodyTextBlockStyle}"/>
        </StackPanel>
    </Grid>
</Page>

Para obtener un ejemplo más detallado, consulte el ejemplo de desencadenadores de estado.

Comentarios

Use AdaptiveTriggers para crear reglas que desencadenen automáticamente un cambio de VisualState cuando la ventana sea un alto o ancho especificados. Al usar AdaptiveTriggers en el marcado XAML, no es necesario controlar el evento Window.SizeChanged y llamar a VisualStateManager.GoToState en el código. Además, al usar AdaptiveTriggers en visualStateManager, puedes ver los efectos de estos cambios adaptables directamente en la superficie de diseño XAML en Microsoft Visual Studio.

Puede usar las propiedades MinWindowWidth y MinWindowHeight de forma independiente o conjunta entre sí. Este XAML muestra un ejemplo de cómo usar ambas propiedades juntas. El desencadenador indica que se va a aplicar el visualState correspondiente cuando el ancho de la ventana actual es >= 720 píxeles efectivos Y el alto de la ventana actual es >= 900 píxeles efectivos.

<AdaptiveTrigger MinWindowWidth="720" MinWindowHeight="900"/>

Constructores

AdaptiveTrigger()

Inicializa una nueva instancia de la clase AdaptiveTrigger .

Propiedades

Dispatcher

Obtiene el CoreDispatcher al que está asociado este objeto. CoreDispatcher representa una instalación que puede acceder a DependencyObject en el subproceso de la interfaz de usuario, incluso si un subproceso que no es de interfaz de usuario inicia el código.

(Heredado de DependencyObject)
MinWindowHeight

Obtiene o establece el alto mínimo de la ventana en el que se debe aplicar VisualState .

MinWindowHeightProperty

Identifica la propiedad de dependencia MinWindowHeight .

MinWindowWidth

Obtiene o establece el ancho de ventana mínimo en el que se debe aplicar VisualState .

MinWindowWidthProperty

Identifica la propiedad de dependencia MinWindowWidth .

Métodos

ClearValue(DependencyProperty)

Borra el valor local de una propiedad de dependencia.

(Heredado de DependencyObject)
GetAnimationBaseValue(DependencyProperty)

Devuelve cualquier valor base establecido para una propiedad de dependencia, que se aplicaría en los casos en los que una animación no está activa.

(Heredado de DependencyObject)
GetValue(DependencyProperty)

Devuelve el valor efectivo actual de una propiedad de dependencia de dependencyObject.

(Heredado de DependencyObject)
ReadLocalValue(DependencyProperty)

Devuelve el valor local de una propiedad de dependencia, si se establece un valor local.

(Heredado de DependencyObject)
RegisterPropertyChangedCallback(DependencyProperty, DependencyPropertyChangedCallback)

Registra una función de notificación para escuchar los cambios en una dependencyProperty específica en esta instancia de DependencyObject .

(Heredado de DependencyObject)
SetActive(Boolean)

Establece el valor que indica si el desencadenador de estado está activo.

(Heredado de StateTriggerBase)
SetValue(DependencyProperty, Object)

Establece el valor local de una propiedad de dependencia en dependencyObject.

(Heredado de DependencyObject)
UnregisterPropertyChangedCallback(DependencyProperty, Int64)

Cancela una notificación de cambio registrada anteriormente mediante una llamada a RegisterPropertyChangedCallback.

(Heredado de DependencyObject)

Se aplica a

Consulte también