AdaptiveTrigger Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
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
- Atributos
Exemplos
Dica
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 um AdaptiveTrigger
para criar uma 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 manipular 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 no 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 atual da janela for >= 900 pixels efetivos.
<AdaptiveTrigger MinWindowWidth="720" MinWindowHeight="900"/>
Construtores
AdaptiveTrigger() |
Inicializa uma nova instância da classe AdaptiveTrigger |
Propriedades
Dispatcher |
Sempre retorna |
DispatcherQueue |
Obtém o ao |
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
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 nos 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 uma DependencyProperty específica nessa 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) |