Unlimited WordPress themes, graphics, videos & courses! Unlimited asset downloads! From $16.50/m
Advertisement
  1. Code
  2. Windows Phone
Code

Windows Phone 8: eventos y navegación

by
Difficulty:BeginnerLength:ShortLanguages:
This post is part of a series called Getting Started with Windows Phone 8.
Windows Phone 8: Controls and Properties
Windows Phone 8: Working With Media Content

Spanish (Español) translation by Rolando Gonzalez (you can also view the original English article)

En este tutorial, voy a estar enseñándote acerca del modelo de eventos del Windows Phone (Teléfono de Windows). Más importante aún, vamos a aprender acerca de la navegación y cómo podemos agregarla a una aplicación para permitir a los usuarios navegar entre las páginas de una aplicación de teléfono Windows.

1. Eventos

Eventos en teléfonos Windows son simplemente acciones que se disparan después de una condición específica ha sido satisfactoria. Esta acción se inicia normalmente por la interacción del usuario. Un buen ejemplo de un evento es que el usuario está pulsando un botón en una aplicación de un teléfono Windows. El usuario normalmente va a esperar que algo suceda después de tocar un botón. ¿Cierto?

Los controles pueden tener muchos eventos asociados a ellos. En teléfonos Windows, podemos especificar un bloque de código que se ejecutará cuando se produce un evento en particular. Este proceso se denomina event handling (Manejador o Controlador de Eventos). También podemos crear eventos personalizados, pero esto va más allá del alcance de este tutorial. En su lugar, vamos a explorar algunos de los eventos incorporados que responden a algunos de los controles de teléfonos Windows.

2. Manejador o Controlador de Eventos

El manejo de eventos es bastante fácil en teléfonos Windows. Incluso tenemos la posibilidad de definir manejadores en XAML, similar a cómo definimos propiedades. Vamos a ver como funciona esto.

Comience por crear un nuevo proyecto en C# para Windows Phone como lo hemos hecho en los tutoriales anteriores. En su nuevo proyecto, arrastre un control de Button (Botón) desde el ToolBox (Caja de Herramientas)onto the hasta el espacio en blanco en la vista de diseño de Visual Studio. Deberías tener algo similar a lo que tengo a continuación.

Para demostrar como funcionan los eventos, vamos a tener nuestra aplicación mostrando un sencillo mensaje de Hello World cuando el usuario pulsa el botón que acaba de agregar. Un control de botón tiene un evento Click, el que podemos suscribir y manejar.

Para ver los eventos que un control posee, seleccione control en la vista de diseño y vaya a la ventana de propiedades de Visual Studio en la parte inferior derecha. Haga clic en el botón de eventos en la parte superior derecha de la ventana para mostrar los eventos de control.


Deberías ver una lista de eventos para el control seleccionado. Estos eventos son los eventos incorporados del control seleccionado actualmente. En el campo de texto a la derecha de cada evento, podemos especificar el nombre de un método que se invoca cuando ocurre el evento. Ese método es el manejador de eventos.

En otras palabras, el manejador de eventos se invoca cuando se produce el evento. El evento que nos interesa en este momento es el evento Click Haga doble clic en el campo de texto a la derecha del nombre del evento. Esto automáticamente te debería llevar a la clase MainPage.cs que se acopla con nuestra página MainPage.xaml Deberías ver también un método auto-generado, que representa el controlador de eventos, llamado Button_Click o algo similar.

Recuerde que por cada página XAML que creamos en Windows Phone se acopla con una página C# que contiene el código para los controles creados en la página XAML. Este código C# se refiere normalmente como code behind (Código de atrás).

Ahora, vamos a seguir adelante e implementaremos el código para mostrar un mensaje diciendo "Hello World". Agregue el siguiente fragmento de código al método Button_Click como se muestra a continuación.

Esto es todo lo que necesitamos para implementar el controlador de eventos clic para nuestro botón. Antes de probar nuestra aplicación, permítanme explicar lo que hace el código anterior. La clase de MessageBox es parte de la biblioteca .NET y nos permite mostrar un mensaje emergente. Al llamar al método Show de la clase MessageBox y pasando una cadena, "Hola Mundo", una ventana emergente se muestra al usuario. Ejecute la aplicación y pulse el botón para ver el resultado de nuestro trabajo.

Eso fue fácil, ¿no? Los eventos son una parte integral de una aplicación de teléfonos Windows y te encontrarás utilizándolos con frecuencia cuando programes aplicaciones para teléfonos Windows.

3. Navigación

Ahora que sabemos acerca de eventos y manejo de eventos, es el momento de aprender otro aspecto importante de teléfonos Windows, la navegación. La mayoría de las aplicaciones de teléfonos Windows tienen más de una página y necesitamos implementar una manera de navegar entre estas páginas.

Windows Phone tiene una propuesta muy sencilla de navegación, lo que nos permite navegar de una página a otra con muy poco trabajo. La forma en que la navegación trabaja en teléfonos Windows es muy similar a cómo navegas en páginas web. Hacemos uso de un URI or Universal Resource Identifier (Identificador Universal de Recursos), que es muy similar a una URL en el desarrollo web. Con URIs, incluso se puede pasar parámetros, tal como se hace en la web. Sin embargo no vamos a cubrir este aspecto de la navegación en este tutorial.

Vamos a explorar la navegación ampliando nuestra aplicación actual. Primero tenemos que crear una nueva página a la que podemos navegar. Haga clic derecho en el nombre de su proyecto en el Solution Explorer (Explorador de Soluciones) y seleccione Add > Add Item (Agregar Elemento) en el menú. Cree una página llamada Page1.xaml.

Añada un control TextBlock a la nueva página y establezca su texto a "Esta es una nueva página", cambiando la propiedad Text.

El objetivo es navegar desde la primera página, MainPage.xaml, a la nueva página, Page1.xaml. Para lograr esto, tenemos que editar el controlador de eventos del botón en la primera página. En vez de mostrar un mensaje emergente, navegaremos a la página que acabamos de crear. Abre MainPage.cs y localizar el controlador de eventos que creamos hace un momento. Reemplace su implementación con la que se muestra a continuación.

En el controlador de evento, llamamos el método Navigate en la clase NavigationService, pasando en una instancia de la clase Uri. La clase NavigationService es accesible desde todas las páginas de Windows Phone, lo que nos permite navegar a otra página.

El método Navigate toma una instancia de Uri como parámetro. Creamos el objeto Uri pasando dos parámetros. El primer parámetro es la ruta relativa a la página que queremos navegar, /Page1.xaml en nuestro ejemplo. Es importante añadir la barra diagonal (Foward Slash) al navegar a una ruta relativa. El segundo parámetro que se pasa es del tipo de Uri, UriKind.Relative en este ejemplo. Indica que el primer parámetro es una ruta relativa.

No necesitamos para crear un botón de retroceso, ya que cada dispositivo Windows Phone tiene un botón físico detrás que lleva al usuario a la página anterior. Sin embargo, podríamos reemplazar el comportamiento predeterminado del botón de vuelta si realmente quisiéramos.

Ejecute la aplicación una vez más y pulse el botón en la primera página para navegar a la segunda página. Si usted ha seguido los pasos de este tutorial, la aplicación debería llevarte a la siguiente página, como se muestra a continuación

Como se puede ver, es muy fácil de navegar entre las páginas de una aplicación de Windows Phone. Te animo a explorar la documentación para obtener más información sobre los eventos de Windows Phone y la navegación.

Conclusión

En este tutorial, has aprendido lo básico de eventos de Windows Phone y cómo controlar eventos. También has aprendido acerca de la navegación en Windows Phone.

En el siguiente tutorial, voy a estar mostrando cómo agregar elementos multimedia, como audio y las imágenes, a una aplicación de Windows Phone.

¡Sé el primero en conocer las nuevas traducciones–sigue @tutsplus_es en Twitter!

Advertisement
Advertisement
Advertisement
Advertisement
Looking for something to help kick start your next project?
Envato Market has a range of items for sale to help get you started.