El modificador 'Custom' no es válido en los eventos declarados en interfaces.

No se puede declarar un evento personalizado en una interfaz porque un evento personalizado debe proporcionar una implementación de sus métodos AddHandler, RemoverHandlery RaiseEvent .

La palabra clave Custom puede usarse en una clase derivada que implementa el evento.

Identificador de error: BC31121

Para corregir este error

  • Quite la palabra clave Custom de la declaración del evento en la interfaz.

Ejemplo

En este ejemplo se muestra cómo implementar un evento declarado en una interfaz como un 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 también