O modificador 'Personalizado' não é válido em eventos declarados em interfaces

Um evento personalizado não pode ser declarado em uma interface porque um evento personalizado deve fornecer uma implementação de seus AddHandlermétodos , RemoverHandlere RaiseEvent .

A Custom palavra-chave pode ser usada em uma classe derivada que implementa o evento.

ID de erro: BC31121

Para corrigir este erro

  • Remova a Custom palavra-chave da declaração de evento na interface.

Exemplo

Este exemplo mostra como implementar um evento declarado em uma interface como um evento personalizado.

Interface TestInterface
    Delegate Sub TestDelegate(ByVal sender As Object, ByVal i As Integer)

    Event Test As TestDelegate
End Interface

Class TestClass
    Implements TestInterface

    Public Custom Event Test As TestInterface.
        TestDelegate Implements TestInterface.Test

        AddHandler(ByVal value As TestInterface.TestDelegate)
            ' Code for adding an event handler goes here.
        End AddHandler

        RemoveHandler(ByVal value As TestInterface.TestDelegate)
            ' Code for removing an event handler goes here.
        End RemoveHandler

        RaiseEvent(ByVal sender As Object, ByVal i As Integer)
            ' Code for raising an event goes here.
        End RaiseEvent
    End Event
End Class

Consulte também