AdaptiveTrigger Classe

Definição

Representa uma regra declarativa que aplica estados visuais com base nas propriedades da janela.

/// [Windows.Foundation.Metadata.ContractVersion(Microsoft.UI.Xaml.WinUIContract, 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(Microsoft.UI.Xaml.WinUIContract), 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
Herança
Object IInspectable DependencyObject StateTriggerBase AdaptiveTrigger
Atributos

Exemplos

Tip

Para obter mais informações, diretrizes de design e exemplos de código, consulte layouts responsivos com XAML.

O exemplo a seguir mostra como usar a propriedade StateTriggers com uma AdaptiveTrigger regra declarativa na marcação XAML com base no tamanho da janela. Por padrão, a orientação stackpanel é Vertical. Quando a largura da janela é >= 720 pixels efetivos, a alteração do VisualState é disparada e a StackPanel orientação é alterada para 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>

Comentários

Use AdaptiveTriggers para criar regras que disparam automaticamente uma alteração do VisualState quando a janela é uma altura ou largura especificada. Ao usar AdaptiveTriggers em sua marcação XAML, você não precisa lidar com o evento Window.SizeChanged e chamar VisualStateManager.GoToState em seu código. Além disso, ao usar AdaptiveTriggers em seu VisualStateManager, você pode ver os efeitos dessas alterações adaptáveis diretamente na superfície de design XAML em Microsoft Visual Studio.

Você pode usar as propriedades MinWindowWidth e MinWindowHeight independentemente ou em conjunto entre si. Este XAML mostra um exemplo de como usar as duas propriedades juntas. O gatilho indica que o VisualState correspondente deve ser aplicado quando a largura da janela atual for >= 720 pixels efetivos E a altura da janela atual é >= 900 pixels efetivos.

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

Construtores

Nome Description
AdaptiveTrigger()

Inicializa uma nova instância da classe AdaptiveTrigger

Propriedades

Nome Description
Dispatcher

Sempre retorna null em um aplicativo do SDK de Aplicativo do Windows. Em vez disso , use DispatcherQueue .

(Herdado de DependencyObject)
DispatcherQueue

Obtém o DispatcherQueue que este objeto está associado. Representa DispatcherQueue uma instalação que pode acessar o DependencyObject thread da interface do usuário mesmo se o código for iniciado por um thread que não seja da interface do usuário.

(Herdado de DependencyObject)
MinWindowHeight

Obtém ou define a altura mínima da janela na qual o VisualState deve ser aplicado.

MinWindowHeightProperty

Identifica a propriedade de dependência MinWindowHeight .

MinWindowWidth

Obtém ou define a largura mínima da janela na qual o VisualState deve ser aplicado.

MinWindowWidthProperty

Identifica a propriedade de dependência MinWindowWidth .

Métodos

Nome Description
ClearValue(DependencyProperty)

Limpa o valor local de uma propriedade de dependência.

(Herdado de DependencyObject)
GetAnimationBaseValue(DependencyProperty)

Retorna qualquer valor base estabelecido para uma propriedade de dependência, que se aplicaria em casos em que uma animação não está ativa.

(Herdado de DependencyObject)
GetValue(DependencyProperty)

Retorna o valor efetivo atual de uma propriedade de dependência de um DependencyObject.

(Herdado de DependencyObject)
ReadLocalValue(DependencyProperty)

Retorna o valor local de uma propriedade de dependência, se um valor local for definido.

(Herdado de DependencyObject)
RegisterPropertyChangedCallback(DependencyProperty, DependencyPropertyChangedCallback)

Registra uma função de notificação para escutar alterações em um DependencyProperty específico nesta instância dependencyObject .

(Herdado de DependencyObject)
SetActive(Boolean)

Define o valor que indica se o gatilho de estado está ativo.

(Herdado de StateTriggerBase)
SetValue(DependencyProperty, Object)

Define o valor local de uma propriedade de dependência em um DependencyObject.

(Herdado de DependencyObject)
UnregisterPropertyChangedCallback(DependencyProperty, Int64)

Cancela uma notificação de alteração que foi registrada anteriormente chamando RegisterPropertyChangedCallback.

(Herdado de DependencyObject)

Aplica-se a

Confira também