Esta documentación está archivada y no tiene mantenimiento.

Eventos (Guía de programación de C#)

Los eventos proporcionan un medio de que una clase u objeto informe a otras clases u objetos cuando sucede algo relevante. La clase que envía (o produce) el evento recibe el nombre de editor y las clases que reciben (o controlan) el evento se denominan suscriptores.

En una aplicación de formularios Windows Forms o Web en C# típica, se suscribe a eventos generados por controles como botones y cuadros de lista. Puede utilizar el entorno de desarrollo integrado (IDE) Visual C# para examinar los eventos que publica un control y seleccionar los que desea controlar. El IDE agrega automáticamente un método de controlador de eventos vacío y el código para suscribirse al evento. Para obtener más información, vea Cómo: Suscribir y cancelar la suscripción a eventos (Guía de programación de C#).

Información general de eventos

Los eventos tienen las propiedades siguientes:

  • El editor determina cuándo se produce un evento; los suscriptores determinan qué operación se realiza en respuesta al evento.

  • Un evento puede tener varios suscriptores. Un suscriptor puede controlar varios eventos de varios editores.

  • No se llama nunca a los eventos que no tienen suscriptores.

  • Los eventos se utilizan normalmente para señalar acciones del usuario como hacer clic en un botón o seleccionar un menú en interfaces gráficas de usuario.

  • Si un evento tiene varios suscriptores, se invocan los controladores de eventos sincrónicamente cuando se produce el evento. Para invocar de forma asincrónica los eventos, vea Llamar a métodos sincrónicos de forma asincrónica.

  • Los eventos se pueden utilizar para sincronizar subprocesos.

  • En la biblioteca de clases .NET Framework, los eventos se basan en el delegado EventHandler y en la clase base EventArgs.

Secciones relacionadas

Especificación del lenguaje C#

Para obtener más información, vea las secciones siguientes de Especificación del lenguaje C#:

  • 1.6.6.4 Eventos

  • 10.2.7.2 Nombres de miembros reservados para eventos

  • 10.7 Eventos

  • 13.2.3 Eventos de interfaz

Vea también

Mostrar: