levantando eventos herdados de uma classe base em C#
em C#, é uma prática comum herdar eventos de uma classe base para facilitar o manuseio de eventos nas classes derivadas. No entanto, o levantamento de eventos herdados requer uma abordagem específica para evitar erros do compilador. { Carregamento de EventHandler de Eventos Públicos; EventHandler de eventos públicos terminou; }
em uma classe derivada, tentando aumentar o evento de carregamento usando:
public class BaseClass { public event EventHandler Loading; public event EventHandler Finished; }
resulta no erro: (Baseclass ')
this.Loading(this, new EventHandler());
The event 'BaseClass.Loading' can only appear on the left hand side of = or -= (BaseClass')
definem métodos protegidos na classe base responsável por aumentar os eventos. Por exemplo:
public class BaseClass { public event EventHandler Loading; public event EventHandler Finished; protected virtual void OnLoading(EventArgs e) { EventHandler handler = Loading; if( handler != null ) { handler(this, e); } } protected virtual void OnFinished(EventArgs e) { EventHandler handler = Finished; if( handler != null ) { handler(this, e); } } }
Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.
Copyright© 2022 湘ICP备2022001581号-3