NavigationThemeTransition Klasse

Definition

Stellt Seitennavigationsanimationen bereit.

public ref class NavigationThemeTransition sealed : Transition
/// [Microsoft.UI.Xaml.Markup.ContentProperty(Name="DefaultNavigationTransitionInfo")]
/// [Windows.Foundation.Metadata.Activatable(65536, "Microsoft.UI.Xaml.WinUIContract")]
/// [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 NavigationThemeTransition final : Transition
[Microsoft.UI.Xaml.Markup.ContentProperty(Name="DefaultNavigationTransitionInfo")]
[Windows.Foundation.Metadata.Activatable(65536, "Microsoft.UI.Xaml.WinUIContract")]
[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 sealed class NavigationThemeTransition : Transition
Public NotInheritable Class NavigationThemeTransition
Inherits Transition
<NavigationThemeTransition .../>
Vererbung
Object Platform::Object IInspectable DependencyObject Transition NavigationThemeTransition
Attribute

Beispiele

Tip

Weitere Informationen, Entwurfsanleitungen und Codebeispiele finden Sie unter Seitenübergänge.

Die WinUI 3 Gallery-App enthält interaktive Beispiele für die meisten WinUI 3-Steuerelemente, -Features und -Funktionen. Holen Sie sich die App aus dem Microsoft Store oder holen Sie sich den Quellcode auf GitHub.

Hinweise

Mit Windows 10, Version 1803, verwendet ein Frame NavigationThemeTransition, um die Navigation zwischen Seiten standardmäßig zu animieren.

Sie können NavigationThemeTransition verwenden, um animierte Übergänge hinzuzufügen, wenn Ihre App zwischen verschiedenen Inhalten in einem Frame navigiert. Sie können navigationThemeTransition der Transitions-Auflistung der Seite hinzufügen, zu der navigiert wird, oder der ContentTransitions-Auflistung für den Navigationsrahmen. Im Allgemeinen wird empfohlen, die ContentTransitions-Eigenschaft des Frames zu verwenden, um sicherzustellen, dass Übergänge für alle Navigationsseiten auftreten.

In diesem Beispiel wird die NavigationThemeTransition gezeigt, die der ContentTransitions-Auflistung eines Frame hinzugefügt wurde.

<Frame ...>
    <Frame.ContentTransitions>
        <TransitionCollection>
            <NavigationThemeTransition/> 
        </TransitionCollection> 
    </Frame.ContentTransitions> 
    ...
</Frame> 
var frame = new Frame(); 
frame.ContentTransitions = new TransitionCollection(); 
frame.ContentTransitions.Add(new NavigationThemeTransition()); 

In Windows 10 werden zwei verschiedene Animationen für die Navigation zwischen Seiten in einer App bereitgestellt. Die Navigationsanimationen werden durch Unterklassen von NavigationTransitionInfo dargestellt.

  • Seitenaktualisierung: Die Seitenaktualisierung ist die Standardanimation für die Seitennavigation. Es handelt sich um eine Kombination aus einer Animation zum Aufziehen einer Folie und einer Einblendungsanimation für den eingehenden Inhalt. Sie sollten die Seitenaktualisierung verwenden, wenn Sie die Navigation auf oberster Ebene wie ein Navigationsmenü verwenden.

Die Seitenaktualisierungsanimation wird durch die EntranceNavigationTransitionInfo-Klasse dargestellt. Sie können die angefügte Eigenschaft EntranceNavigationTransitionInfo.IsTargetElement verwenden, um die Seitenaktualisierungsbewegung auf eine Teilmenge der Seite anzuwenden; Beispielsweise alle Inhalte, die die Befehls-UI der Seite ausschließen.

  • Drill In: Sie sollten die Drill-In-Animation verwenden, wenn ein Benutzer mit der Benutzeroberfläche auf einer Seite interagiert, die einen Link zu einer anderen Seite darstellt. Beispielsweise sollte auf einer Seite, die eine Liste von Alben darstellt, wenn ein Benutzer auf ein Albumelement klickt, ein Drilldown auf die Albumseite geben.

Die Drill-In-Animation wird durch die DrillInNavigationTransitionInfo-Klasse dargestellt.

Standardmäßig gibt NavigationThemeTransition eine Seitenaktualisierungsanimation wieder. Sie können dieses Verhalten jedoch überschreiben, indem Sie die DefaultNavigationTransitionInfo-Eigenschaft von NavigationThemeTransition festlegen. Der NavigationTransitionInfo-Wert dieser Eigenschaft wird standardmäßig für alle Navigationen verwendet.

Sie können die animation angeben, die für eine bestimmte Navigation verwendet werden soll, indem Sie die Überladung von Frame.Navigate verwenden, die drei Parameter akzeptiert.

In diesem Beispiel fordert eine Musikbrowsen-App einen Drilldown von einer Albumliste auf eine Seite an, die ein bestimmtes Album darstellt.

void AlbumsListView_ItemClick(object sender, ItemClickEventArgs e) 
{
    // Get albumId from clicked item... 
    Frame.Navigate(typeof(AlbumPage), albumId, new DrillInNavigationTransitionInfo());
} 

Darüber hinaus können Sie frame.GoBack(NavigationTransitionInfo) verwenden, um einen bestimmten Übergang wiederzugeben, wenn Sie im Frame-Hintergrundstapel zurück navigieren. Dies kann nützlich sein, wenn Sie das Navigationsverhalten dynamisch basierend auf der Bildschirmgröße ändern. Beispiel: in einem dynamischen Master-/Detailszenario. Weitere Beispiele finden Sie im XAML-Master-/Detailbeispiel.

SuppressNavigationTransitionInfo

Sie können SuppressNavigationTransitionInfo anstelle anderer NavigationTransitionInfo-Untertypen verwenden, wenn Sie die Wiedergabe von Animationen während der Navigation vermeiden möchten.

// Navigate to your first page without a transition 
Frame.Navigate(typeof(MainPage), null, new SuppressNavigationTransitionInfo()); 

Konstruktoren

Name Beschreibung
NavigationThemeTransition()

Initialisiert eine neue Instanz der NavigationThemeTransition-Klasse .

Eigenschaften

Name Beschreibung
DefaultNavigationTransitionInfo

Dient zum Abrufen oder Festlegen des Standardübergangs, der beim Navigieren zwischen Seiten verwendet wird.

DefaultNavigationTransitionInfoProperty

Identifies the DefaultNavigationTransitionInfo dependency property.

Dispatcher

Gibt immer in einer Windows App SDK-App zurück null . Verwenden Sie stattdessen DispatcherQueue .

(Geerbt von DependencyObject)
DispatcherQueue

Ruft ab DispatcherQueue , dem dieses Objekt zugeordnet ist. Dies DispatcherQueue stellt eine Einrichtung dar, die auf den DependencyObject UI-Thread zugreifen kann, auch wenn der Code von einem Nicht-UI-Thread initiiert wird.

(Geerbt von DependencyObject)

Methoden

Name Beschreibung
ClearValue(DependencyProperty)

Löscht den lokalen Wert einer Abhängigkeitseigenschaft.

(Geerbt von DependencyObject)
GetAnimationBaseValue(DependencyProperty)

Gibt einen Basiswert zurück, der für eine Abhängigkeitseigenschaft eingerichtet wurde, was in Fällen angewendet wird, in denen eine Animation nicht aktiv ist.

(Geerbt von DependencyObject)
GetValue(DependencyProperty)

Gibt den aktuellen effektiven Wert einer Abhängigkeitseigenschaft aus einem DependencyObject zurück.

(Geerbt von DependencyObject)
ReadLocalValue(DependencyProperty)

Gibt den lokalen Wert einer Abhängigkeitseigenschaft zurück, wenn ein lokaler Wert festgelegt wird.

(Geerbt von DependencyObject)
RegisterPropertyChangedCallback(DependencyProperty, DependencyPropertyChangedCallback)

Registriert eine Benachrichtigungsfunktion, um Änderungen an einer bestimmten DependencyProperty für diese DependencyObject-Instanz zu überwachen.

(Geerbt von DependencyObject)
SetValue(DependencyProperty, Object)

Legt den lokalen Wert einer Abhängigkeitseigenschaft für ein DependencyObject fest.

(Geerbt von DependencyObject)
UnregisterPropertyChangedCallback(DependencyProperty, Int64)

Bricht eine Änderungsbenachrichtigung ab, die zuvor durch Aufrufen von RegisterPropertyChangedCallback registriert wurde.

(Geerbt von DependencyObject)

Gilt für:

Weitere Informationen