Definição – o que significa o manipulador de eventos?
Um manipulador de eventos, em C #, é um método que contém o código executado em resposta a um evento específico que ocorre em um aplicativo.
Os manipuladores de eventos são usados em aplicativos de interface gráfica com o usuário (GUI) para manipular eventos como cliques em botões e seleções de menu, gerados por controles na interface do usuário. Um único manipulador de eventos pode ser usado para processar eventos gerados por vários controles. Um evento pode ser associado a vários manipuladores de eventos, que serão chamados de forma síncrona quando o evento ocorrer. Os manipuladores de eventos também podem ser usados para manipular eventos que sinalizam as mudanças de estado de um objeto para os clientes do objeto.
Definirtec explica o manipulador de eventos
O modelo de evento C # é baseado em um padrão “publicar-assinar” no qual uma classe (publicador) dispara um evento, enquanto outra classe (assinante) recebe esse evento. Um manipulador de eventos é o assinante que contém o código para manipular eventos específicos.
Por exemplo, um manipulador de eventos pode ser usado para manipular um evento que ocorre durante o clique de um botão de comando na IU.
Em C #, um evento é conectado a seu manipulador por um delegado de evento. Para gerar um evento e responder a ele, os dois elementos necessários são o delegado que vincula o evento ao seu método manipulador e a classe que contém os dados do evento. Ao adicionar a instância delegada ao objeto de evento usando o operador de atribuição de adição (‘+ =’), o manipulador de eventos é chamado na ocorrência de seu evento associado.
A assinatura de um delegado do manipulador de eventos inclui dois parâmetros que representam a instância do objeto levantando o evento e o objeto que contém os dados do evento. A assinatura de um método de manipulador de eventos deve corresponder à do delegado para aquele evento e ao tipo de retorno como void. O .NET framework fornece um manipulador de eventos integrado que pode ser usado nos casos em que os delegados usados diferem apenas pelo nome do tipo e, portanto, podem reduzir o código que precisa ser mantido.
Esta definição foi escrita no contexto de C #