AdaptiveTrigger Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Rappresenta una regola dichiarativa che applica gli stati di visualizzazione in base alle proprietà della finestra.
/// [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 .../>
- Ereditarietà
- Attributi
Requisiti Windows
Famiglia di dispositivi |
Windows 10 (è stato introdotto in 10.0.10240.0)
|
API contract |
Windows.Foundation.UniversalApiContract (è stato introdotto in v1.0)
|
Esempio
Suggerimento
Per altre info, linee guida per la progettazione ed esempi di codice, vedi Layout reattivi con XAML.
Se è installata l'app WinUI 2 Gallery , aprire l'app per visualizzare i controlli in azione.
Questo esempio illustra come usare la proprietà StateTriggers con adaptiveTrigger per creare una regola dichiarativa nel markup XAML in base alle dimensioni della finestra. Per impostazione predefinita, l'orientamento di StackPanel è Vertical. Quando la larghezza della finestra è >= 720 pixel effettivi, viene attivata la modifica di VisualState e l'orientamento di StackPanel viene modificato in Orizzontale.
<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>
Per un esempio più dettagliato, vedere l'esempio di trigger di stato.
Commenti
Usare AdaptiveTriggers per creare regole che attivano automaticamente una modifica di VisualState quando la finestra è un'altezza o una larghezza specificata. Quando usi AdaptiveTriggers nel markup XAML, non devi gestire l'evento Window.SizeChanged e chiamare VisualStateManager.GoToState nel codice. Inoltre, quando usi AdaptiveTriggers in VisualStateManager, puoi vedere gli effetti di queste modifiche adattive direttamente nell'area di progettazione XAML in Microsoft Visual Studio.
È possibile utilizzare le proprietà MinWindowWidth e MinWindowHeight in modo indipendente o in combinazione tra loro. Questo codice XAML mostra un esempio di utilizzo di entrambe le proprietà insieme. Il trigger indica che l'oggetto VisualState corrispondente deve essere applicato quando la larghezza corrente della finestra è >= 720 pixel effettivi E l'altezza della finestra corrente è >= 900 pixel effettivi.
<AdaptiveTrigger MinWindowWidth="720" MinWindowHeight="900"/>
Costruttori
AdaptiveTrigger() |
Inizializza una nuova istanza della classe AdaptiveTrigger |
Proprietà
Dispatcher |
Ottiene coreDispatcher a cui è associato questo oggetto. CoreDispatcher rappresenta una funzionalità che può accedere a DependencyObject nel thread dell'interfaccia utente anche se il codice viene avviato da un thread non dell'interfaccia utente. (Ereditato da DependencyObject) |
MinWindowHeight |
Ottiene o imposta l'altezza minima della finestra in corrispondenza della quale deve essere applicato VisualState . |
MinWindowHeightProperty |
Identifica la proprietà di dipendenza MinWindowHeight . |
MinWindowWidth |
Ottiene o imposta la larghezza minima della finestra in corrispondenza della quale deve essere applicato VisualState . |
MinWindowWidthProperty |
Identifica la proprietà di dipendenza MinWindowWidth . |
Metodi
ClearValue(DependencyProperty) |
Cancella il valore locale di una proprietà di dipendenza. (Ereditato da DependencyObject) |
GetAnimationBaseValue(DependencyProperty) |
Restituisce qualsiasi valore di base stabilito per una proprietà di dipendenza, che si applica nei casi in cui un'animazione non è attiva. (Ereditato da DependencyObject) |
GetValue(DependencyProperty) |
Restituisce il valore effettivo corrente di una proprietà di dipendenza da dependencyObject. (Ereditato da DependencyObject) |
ReadLocalValue(DependencyProperty) |
Restituisce il valore locale di una proprietà di dipendenza, se è impostato un valore locale. (Ereditato da DependencyObject) |
RegisterPropertyChangedCallback(DependencyProperty, DependencyPropertyChangedCallback) |
Registra una funzione di notifica per l'ascolto delle modifiche apportate a una dipendenza specifica in questa istanza di DependencyObject . (Ereditato da DependencyObject) |
SetActive(Boolean) |
Imposta il valore che indica se il trigger di stato è attivo. (Ereditato da StateTriggerBase) |
SetValue(DependencyProperty, Object) |
Imposta il valore locale di una proprietà di dipendenza su dependencyObject. (Ereditato da DependencyObject) |
UnregisterPropertyChangedCallback(DependencyProperty, Int64) |
Annulla una notifica di modifica registrata in precedenza chiamando RegisterPropertyChangedCallback. (Ereditato da DependencyObject) |