Xamarin Forms ¿cómo manejar los eventos?

Primero que nada debemos comprender que es un evento. Un evento es una acción que reconoce un objeto, como presionar un botón, presionar una tecla, y para cada evento se puede escribir código para que responda a la acción que se realizó. Los eventos se pueden producir como resultado de una acción de usuario o del código del programa, o puede que los desencadene el sistema.


En Xamari.Forms se pueden manejar los eventos a través de las siguientes maneras:

  • Mediante XAML
  • Mediante código usando la sintaxis estándar
  • Mediante código usando las expresiones lambda

Otra forma de manejar eventos es mediante MVVM datos enlazados, en este artículo no veremos esto, ya que requiere más de un artículo para entender el patrón MVVM y el cual lo explicaremos en una serie de artículos.

Manejo de eventos desde XAML

EN esta forma de manejar los eventos declararemos el nombre del manejador del evento directamente en el XAML y en el code-behind se creará el evento donde pondremos el código de respuesta. Por ejemplo tenemos una página XAML llamada Inicio.xaml y tenemos un botón el cual declararíamos de la siguiente manera:

<Button Clicked="Button_Clicked"></Button>

En el code-behind que sería el archivo Inicio.xaml.cs quedaría como sigue:

private void Button_Clicked(object sender, EventArgs e)
{

}

Manejo de eventos mediante código usando la sintaxis estándar

 

Si sabes programar en el lenguaje c# podemos utilizar la sintaxis tradicional para el manejo de eventos, esto se puede utilizar para todos los elementos visuales y cualquier otro objeto. Esta técnica está basada en el operador de sobrecarga += y es una técnica muy recomendada ya que podemos desasignar un evento a través del uso del operador sobrecargado +=, optimizando el uso de memoria del dispositivo. En el siguiente ejemplo de código se muestra el uso de la sintaxis estándar para manejar el evento clic en un botón.

 

this.Button1.Clicked += Button_Clicked;

private void Button_Clicked(object sender, EventArgs e)
{

}

Manejo de eventos mediante código usando las expresiones lambda

Las expresiones lamda son un tipo de método anónimo, los cuales no requieren la declaración del cuerpo del método por separado, todo se hace en un solo lado, cumpliendo con la signatura del delegado en el que se basa el evento. El compilador infiere los tipos de los argumentos por lo que tampoco es necesario que se especifique de manera explícita.

En el siguiente ejemplo se muestra el uso de la expresión lambda para manejar el evento clicked de un botón.

this.Button1.Clicked+=(sender, args) =>
{
    //Evento
}

Este evento no se puede desasignar por la forma en que se declara.

 

Artículos relacionados
0 Comentarios
Enviame un comentario