Sobes.tech
Junior — Middle

Como é efetuada a inscrição no evento para o receber?

sobes.tech IA

Resposta da IA

No C#, o registo num evento é feito usando o operador +=, que adiciona um manipulador (delegado) ao evento. O manipulador é um método que será chamado quando o evento ocorrer.

Exemplo:

public class Publisher
{
    public event EventHandler MyEvent;

    public void RaiseEvent()
    {
        MyEvent?.Invoke(this, EventArgs.Empty);
    }
}

public class Subscriber
{
    public void OnMyEvent(object sender, EventArgs e)
    {
        Console.WriteLine("Evento recebido");
    }
}

// Uso:
var publisher = new Publisher();
var subscriber = new Subscriber();
publisher.MyEvent += subscriber.OnMyEvent; // registar manipulador

publisher.RaiseEvent(); // irá chamar OnMyEvent

Assim, para receber um evento, é necessário subscrever-se a ele, adicionando um método manipulador ao evento.