NavigationThemeTransition Classe
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Fournit des animations de navigation de page.
public ref class NavigationThemeTransition sealed : Transition
/// [Windows.Foundation.Metadata.Activatable(65536, Windows.Foundation.UniversalApiContract)]
/// [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)]
/// [Windows.UI.Xaml.Markup.ContentProperty(Name="DefaultNavigationTransitionInfo")]
class NavigationThemeTransition final : Transition
/// [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)]
/// [Windows.UI.Xaml.Markup.ContentProperty(Name="DefaultNavigationTransitionInfo")]
/// [Windows.Foundation.Metadata.Activatable(65536, "Windows.Foundation.UniversalApiContract")]
class NavigationThemeTransition final : Transition
[Windows.Foundation.Metadata.Activatable(65536, typeof(Windows.Foundation.UniversalApiContract))]
[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)]
[Windows.UI.Xaml.Markup.ContentProperty(Name="DefaultNavigationTransitionInfo")]
public sealed class NavigationThemeTransition : Transition
[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)]
[Windows.UI.Xaml.Markup.ContentProperty(Name="DefaultNavigationTransitionInfo")]
[Windows.Foundation.Metadata.Activatable(65536, "Windows.Foundation.UniversalApiContract")]
public sealed class NavigationThemeTransition : Transition
Public NotInheritable Class NavigationThemeTransition
Inherits Transition
<NavigationThemeTransition .../>
- Héritage
- Attributs
Configuration requise pour Windows
Famille d’appareils |
Windows 10 (introduit dans 10.0.10240.0)
|
API contract |
Windows.Foundation.UniversalApiContract (introduit dans v1.0)
|
Exemples
Conseil
Pour plus d’informations, des conseils de conception et des exemples de code, consultez Transitions de page.
Si vous avez installé l’application WinUI 2 Gallery , cliquez ici pour ouvrir l’application et voir Transitions de page en action.
Remarques
Avec Windows 10, version 1803, un frame utilise NavigationThemeTransition pour animer la navigation entre les pages par défaut.
Vous pouvez utiliser NavigationThemeTransition pour ajouter des transitions animées lorsque votre application navigue entre différents éléments de contenu dans un frame. Vous pouvez ajouter NavigationThemeTransition à la collection Transitions de la page à laquelle vous accédez, ou à la collection ContentTransitions pour le cadre de navigation. En général, nous vous recommandons d’utiliser la propriété ContentTransitions du cadre pour garantir que les transitions se produisent pour toutes les pages de navigation.
Cet exemple montre NavigationThemeTransition ajouté à la collection ContentTransitions d’un frame.
<Frame ...>
<Frame.ContentTransitions>
<TransitionCollection>
<NavigationThemeTransition/>
</TransitionCollection>
</Frame.ContentTransitions>
...
</Frame>
var frame = new Frame();
frame.ContentTransitions = new TransitionCollection();
frame.ContentTransitions.Add(new NavigationThemeTransition());
Dans Windows 10, deux animations différentes sont fournies pour la navigation entre les pages d’une application. Les animations de navigation sont représentées par des sous-classes de NavigationTransitionInfo.
- Actualisation de page : l’actualisation de la page est l’animation par défaut pour la navigation sur les pages. Il s’agit d’une combinaison d’une animation de diapositive vers le haut et d’un fondu dans l’animation pour le contenu entrant. Vous devez utiliser l’actualisation des pages lorsque vous utilisez la navigation de niveau supérieur comme un menu de navigation.
L’animation d’actualisation de page est représentée par la classe EntranceNavigationTransitionInfo . Vous pouvez utiliser la propriété jointe EntranceNavigationTransitionInfo.IsTargetElement pour appliquer le mouvement d’actualisation de la page à un sous-ensemble de la page ; par exemple, tout le contenu à l’exception de l’interface utilisateur de commandes de la page.
- Extraction : vous devez utiliser l’animation d’extraction lorsqu’un utilisateur interagit avec l’interface utilisateur sur une page qui représente un lien vers une autre page. Par exemple, dans une page qui représente une liste d’albums, lorsqu’un utilisateur clique sur un élément d’album, il doit y avoir une exploration de transition vers la page d’album.
L’extraction dans l’animation est représentée par la classe DrillInNavigationTransitionInfo .
Par défaut, NavigationThemeTransition lit une animation d’actualisation de page. Toutefois, vous pouvez remplacer ce comportement en définissant la propriété DefaultNavigationTransitionInfo de NavigationThemeTransition. La valeur NavigationTransitionInfo de cette propriété est utilisée pour toutes les navigations par défaut.
Vous pouvez spécifier l’animation à utiliser pour une navigation particulière à l’aide de la surcharge de Frame.Navigate qui prend 3 paramètres.
Dans cet exemple, lorsqu’un utilisateur « explore » une liste d’albums vers une page représentant un album particulier, une application de navigation musicale demande une extraction dans l’animation.
void AlbumsListView_ItemClick(object sender, ItemClickEventArgs e)
{
// Get albumId from clicked item...
Frame.Navigate(typeof(AlbumPage), albumId, new DrillInNavigationTransitionInfo());
}
En outre, vous pouvez utiliser Frame.GoBack(NavigationTransitionInfo) pour lire une transition spécifique lors de la navigation dans la pile arrière frame . Cela peut être utile lorsque vous modifiez dynamiquement le comportement de navigation en fonction de la taille de l’écran ; par exemple, dans un scénario de master/détail réactif. Pour obtenir d’autres exemples, consultez l’exemple de master/détail XAML.
SuppressNavigationTransitionInfo
Vous pouvez utiliser SuppressNavigationTransitionInfo à la place d’autres sous-types NavigationTransitionInfo lorsque vous souhaitez éviter de lire des animations pendant la navigation.
// Navigate to your first page without a transition
Frame.Navigate(typeof(MainPage), null, new SuppressNavigationTransitionInfo());
Constructeurs
NavigationThemeTransition() |
Initialise une nouvelle instance de la classe NavigationThemeTransition. |
Propriétés
DefaultNavigationTransitionInfo |
Obtient ou définit la transition par défaut utilisée lors de la navigation entre les pages. |
DefaultNavigationTransitionInfoProperty |
Identifie la propriété de dépendance DefaultNavigationTransitionInfo . |
Dispatcher |
Obtient le CoreDispatcher auquel cet objet est associé. CoreDispatcher représente une fonctionnalité qui peut accéder à DependencyObject sur le thread d’interface utilisateur, même si le code est initié par un thread autre que l’interface utilisateur. (Hérité de DependencyObject) |
Méthodes
ClearValue(DependencyProperty) |
Efface la valeur locale d’une propriété de dépendance. (Hérité de DependencyObject) |
GetAnimationBaseValue(DependencyProperty) |
Retourne toute valeur de base établie pour une propriété de dépendance, qui s’appliquerait dans les cas où une animation n’est pas active. (Hérité de DependencyObject) |
GetValue(DependencyProperty) |
Retourne la valeur effective actuelle d’une propriété de dépendance à partir d’un DependencyObject. (Hérité de DependencyObject) |
ReadLocalValue(DependencyProperty) |
Retourne la valeur locale d’une propriété de dépendance, si une valeur locale est définie. (Hérité de DependencyObject) |
RegisterPropertyChangedCallback(DependencyProperty, DependencyPropertyChangedCallback) |
Inscrit une fonction de notification pour écouter les modifications apportées à un DependencyProperty spécifique sur ce instance DependencyObject. (Hérité de DependencyObject) |
SetValue(DependencyProperty, Object) |
Définit la valeur locale d’une propriété de dépendance sur un DependencyObject. (Hérité de DependencyObject) |
UnregisterPropertyChangedCallback(DependencyProperty, Int64) |
Annule une notification de modification précédemment inscrite en appelant RegisterPropertyChangedCallback. (Hérité de DependencyObject) |