Der Custom-Modifizierer ist nicht gültig für Ereignisse, die ohne expliziten Delegattyp deklariert wurden
Aktualisiert: November 2007
'Custom' modifier is not valid on events declared without explicit delegate types
Im Unterschied zu Ereignissen, die nicht benutzerdefiniert sind, erfordert eine Custom Event-Deklaration eine As-Klausel nach dem Ereignisnamen, die den Delegattyp für das Ereignis explizit angibt.
Nicht benutzerdefinierte Ereignisse können entweder mit einer As-Klausel und einem expliziten Delegattyp oder mit einer Parameterliste direkt nach dem Ereignisnamen definiert werden.
Fehler-ID: BC31122
So beheben Sie diesen Fehler
Definieren Sie einen Delegaten mit der gleichen Parameterliste wie das benutzerdefinierte Ereignis.
Wenn z. B. das Custom Event mit Custom Event Test(ByVal sender As Object, ByVal i As Integer) definiert wurde, lautet der entsprechende Delegat wie folgt.
Delegate Sub TestDelegate(ByVal sender As Object, ByVal i As Integer)
Ersetzen Sie die Parameterliste des benutzerdefinierten Ereignisses durch eine As-Klausel, die den Delegattyp angibt.
In der Fortsetzung des Beispiels wird die Custom Event-Deklaration wie folgt umgeschrieben.
Custom Event Test As TestDelegate
Beispiel
In diesem Beispiel wird ein Custom Event deklariert und die erforderliche As-Klausel mit einem Delegattyp angegeben.
Delegate Sub TestDelegate(ByVal sender As Object, ByVal i As Integer)
Custom Event Test As TestDelegate
AddHandler(ByVal value As TestDelegate)
' Code for adding an event handler goes here.
End AddHandler
RemoveHandler(ByVal value As 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
Siehe auch
Referenz
<languageKeyword>Event</languageKeyword>-Anweisung