Inhabilitar la transición de entrada para algunos controles del Grid XAML


Las animaciones de entrada, salida, añadir elemento, seleccionar, ordenar, etc., que trae el SDK de la Tienda Windows aportan un toque de calidad a nuestras apps. Las páginas que creamos desde Visual Studio incorporan algunas transiciones por defecto, aunque en algunas ocasiones nos interesará inhabilitarlas.

Eliminar las transiciones de entrada de un Grid es sencillo, sólo tendremos que borrar la colección de transiciones que ya nos habrá añadido el SDK en la página y, por si acaso, asegurarnos que no queda ninguna:

He añadido un estilo dentro de la página que elimina todas las transiciones en lugar de quitar las transiciones directamente dentro del Grid. Lo hago así para evitar que el estilo que puede haber en el App.xaml afecte a este control. Por ejemplo, alguien podría haber escrito un estilo que añadiría la animación a mi Grid sin que yo me diera cuenta:

Inhabilitar sólo las transiciones de algunos controles

Ahora ya sabemos eliminar las transiciones de entrada de todos los elementos del Grid, pero en ocasiones nos interesará quitar la animación de algunos y mantener la de otros. Esto no es posible directamente, para poder conseguir este efecto tendremos que modificar la estructura de la página, asignar las transiciones dentro de un Grid interno y en el Grid externo deshabilitar las transiciones:

Y nos queda algo así, he añadido parámetros a la transición para exagerar el efecto:

w8animation

No es una solución demasiado elegante, así que si tenéis otra mejor responded con un post y así aprendemos todos ^^.

Anuncios

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s