Compartir a través de


NavigationThemeTransition Clase

Definición

Proporciona animaciones de navegación de página.

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 .../>
Herencia
Object Platform::Object IInspectable DependencyObject Transition NavigationThemeTransition
Atributos

Ejemplos

Sugerencia

Para obtener más información, instrucciones de diseño y ejemplos de código, consulta Transiciones de página.

La aplicación WinUI 3 Gallery incluye ejemplos interactivos de la mayoría de los controles, las características y la funcionalidad de WinUI 3. Obtenga la aplicación en Microsoft Store u obtenga el código fuente en GitHub.

Comentarios

Con Windows 10, versión 1803, un frame usa NavigationThemeTransition para animar la navegación entre Pages de forma predeterminada.

Puedes usar NavigationThemeTransition para agregar transiciones animadas cuando la aplicación navega entre diferentes partes de contenido en un frame. Puede agregar NavigationThemeTransition a la colección Transitions de la página a la que se va a navegar o a la colección ContentTransitions para el marco de navegación. En general, se recomienda usar la propiedad ContentTransitions del marco para asegurarse de que se produzcan transiciones para todas las páginas de navegación.

En este ejemplo se muestra NavigationThemeTransition agregado a la colección ContentTransitions de un frame.

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

En Windows 10, se proporcionan dos animaciones diferentes para la navegación entre páginas de una aplicación. Las animaciones de navegación se representan mediante subclases de NavigationTransitionInfo.

  • Actualización de página: la actualización de página es la animación predeterminada para la navegación de páginas. Es una combinación de una animación de deslizar hacia arriba y una atenuación en animación para el contenido entrante. Debe usar la actualización de página al usar la navegación de nivel superior como un menú de navegación.

La animación de actualización de página se representa mediante la clase EntranceNavigationTransitionInfo . Puede usar la propiedad adjunta EntranceNavigationTransitionInfo.IsTargetElement para aplicar el movimiento de actualización de página a un subconjunto de la página; por ejemplo, todo el contenido excluye la interfaz de usuario de comandos de la página.

  • Obtención de detalles: debe usar la animación de obtención de detalles cuando un usuario interactúa con la interfaz de usuario en una página que representa un vínculo a otra página. Por ejemplo, en una página que representa una lista de álbumes, cuando un usuario hace clic en un elemento de álbum, debe haber un simulacro en la transición a la página del álbum.

La animación de obtención de detalles se representa mediante la clase DrillInNavigationTransitionInfo .

De forma predeterminada, NavigationThemeTransition reproduce una animación de actualización de página. Sin embargo, puede invalidar este comportamiento estableciendo la propiedad DefaultNavigationTransitionInfo de NavigationThemeTransition. El valor NavigationTransitionInfo de esta propiedad se usa para toda la navegación de forma predeterminada.

Puede especificar la animación que se va a usar para una navegación determinada mediante la sobrecarga de Frame.Navigate que toma 3 parámetros.

En este ejemplo, cuando un usuario "explora en profundidad" de una lista de álbumes a una página que representa un álbum determinado, una aplicación de exploración de música solicita una animación de obtención de detalles.

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

Además, puedes usar Frame.GoBack(NavigationTransitionInfo) para reproducir una transición específica al volver a la pila De fotogramas atrás. Esto puede ser útil al modificar el comportamiento de navegación dinámicamente en función del tamaño de la pantalla; por ejemplo, en un escenario de maestro/detalle con capacidad de respuesta. Para obtener más ejemplos, consulta el ejemplo de maestro y detalle xaml.

SuppressNavigationTransitionInfo

Puedes usar SuppressNavigationTransitionInfo en lugar de otros subtipos NavigationTransitionInfo cuando quieras evitar reproducir cualquier animación durante la navegación.

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

Constructores

NavigationThemeTransition()

Inicializa una nueva instancia de la clase NavigationThemeTransition .

Propiedades

DefaultNavigationTransitionInfo

Obtiene o establece la transición predeterminada que se usa al navegar entre páginas.

DefaultNavigationTransitionInfoProperty

Identifica la propiedad de dependencia DefaultNavigationTransitionInfo .

Dispatcher

Siempre devuelve null en una aplicación de SDK de Aplicaciones para Windows. En su lugar, use DispatcherQueue .

(Heredado de DependencyObject)
DispatcherQueue

Obtiene el objeto DispatcherQueue al que está asociado este objeto. DispatcherQueue representa una instalación que puede tener acceso a DependencyObject en el subproceso de interfaz de usuario incluso si un subproceso que no es de interfaz de usuario inicia el código.

(Heredado de DependencyObject)

Métodos

ClearValue(DependencyProperty)

Borra el valor local de una propiedad de dependencia.

(Heredado de DependencyObject)
GetAnimationBaseValue(DependencyProperty)

Devuelve cualquier valor base establecido para una propiedad de dependencia, que se aplicaría en los casos en los que una animación no está activa.

(Heredado de DependencyObject)
GetValue(DependencyProperty)

Devuelve el valor efectivo actual de una propiedad de dependencia de dependencyObject.

(Heredado de DependencyObject)
ReadLocalValue(DependencyProperty)

Devuelve el valor local de una propiedad de dependencia, si se establece un valor local.

(Heredado de DependencyObject)
RegisterPropertyChangedCallback(DependencyProperty, DependencyPropertyChangedCallback)

Registra una función de notificación para escuchar los cambios en una dependencyProperty específica en esta instancia de DependencyObject .

(Heredado de DependencyObject)
SetValue(DependencyProperty, Object)

Establece el valor local de una propiedad de dependencia en dependencyObject.

(Heredado de DependencyObject)
UnregisterPropertyChangedCallback(DependencyProperty, Int64)

Cancela una notificación de cambio registrada anteriormente mediante una llamada a RegisterPropertyChangedCallback.

(Heredado de DependencyObject)

Se aplica a

Consulte también