Manufactura industrial
Internet industrial de las cosas | Materiales industriales | Mantenimiento y reparación de equipos | Programación industrial |
home  MfgRobots >> Manufactura industrial >  >> Industrial programming >> Lenguaje C

C# - Eventos

Eventos son acciones del usuario, como presionar teclas, clics, movimientos del mouse, etc., o alguna ocurrencia, como notificaciones generadas por el sistema. Las aplicaciones necesitan responder a los eventos cuando ocurren. Por ejemplo, interrupciones. Los eventos se utilizan para la comunicación entre procesos.

Uso de delegados con eventos

Los eventos se declaran y generan en una clase y se asocian con los controladores de eventos utilizando delegados dentro de la misma clase o alguna otra clase. La clase que contiene el evento se utiliza para publicar el evento. Esto se llama el editor clase. Alguna otra clase que acepta este evento se llama suscriptor clase. Los eventos usan el editor-suscriptor modelo.

Un editor es un objeto que contiene la definición del evento y el delegado. La asociación evento-delegado también se define en este objeto. Un objeto de clase de editor invoca el evento y se notifica a otros objetos.

Un suscriptor es un objeto que acepta el evento y proporciona un controlador de eventos. El delegado de la clase de publicación invoca el método (controlador de eventos) de la clase de suscriptor.

Declaración de eventos

Para declarar un evento dentro de una clase, en primer lugar, debe declarar un tipo de delegado para el par como:

public delegate string BoilerLogHandler(string str);

luego, declara el evento usando el event palabra clave −

event BoilerLogHandler BoilerEventLog;

El código anterior define un delegado llamado BoilerLogHandler y un evento llamado BoilerEventLog , que invoca al delegado cuando se genera.

Ejemplo

Demostración en vivo
using System;

namespace SampleApp {
   public delegate string MyDel(string str);
	
   class EventProgram {
      event MyDel MyEvent;
		
      public EventProgram() {
         this.MyEvent += new MyDel(this.WelcomeUser);
      }
      public string WelcomeUser(string username) {
         return "Welcome " + username;
      }
      static void Main(string[] args) {
         EventProgram obj1 = new EventProgram();
         string result = obj1.MyEvent("Tutorials Point");
         Console.WriteLine(result);
      }
   }
}

Cuando el código anterior se compila y ejecuta, produce el siguiente resultado −

Welcome Tutorials Point

Lenguaje C

  1. Clase y objeto de C#
  2. Modificadores de acceso de C#
  3. Palabra clave estática de C#
  4. Clase y método abstractos de C#
  5. Clase anidada de C#
  6. C# Clase parcial y método parcial
  7. Clase y método sellados de C#
  8. Polimorfismo en C++
  9. Abstracción de datos en C++
  10. Encapsulación de datos en C++
  11. C# - Estructura del programa