Permite a una clase notificar a otras cuando ocurre algo de interés.
public class Publicador
{
// Declaracion de un evento
public event EventHandler EventoSimple;
// trigger
public void DispararEvento()
{
// verificacion de subscripcion
if(EventoSimple != null)
{
EventoSimple(this, EventArgs.Empty);
}
}
}
public class Suscriptor
{
public void Suscribirse(Publicador publicador)
{
// suscripcion al evento
publicador.EventoSimple += ManejadorEvento;
}
private void ManejadorEvento(object sender, EventArgs e)
{
// do whatever you need to do and/or send here
}
}
// usage
var publicador = new Publicador();
var suscriptor = new Suscriptor();
suscriptor.Suscribirse(publicador);