Le modificateur 'Custom' n'est pas valide pour les événements déclarés sans types délégués explicites

Contrairement à un événement qui n'est pas personnalisé, une déclaration Custom Event requiert une clause As après le nom de l'évènement qui spécifie explicitement le type délégué de l'événement.

Les événements non personnalisés peuvent être définis avec une clause As et un type délégué explicite, ou avec une liste de paramètres qui suit immédiatement le nom de l'évènement.

ID d'erreur : BC31122

Pour corriger cette erreur

  1. Définissez un délégué avec la même liste de paramètres que l'événement personnalisé.

    Par exemple, si Custom Event a été défini par Custom Event Test(ByVal sender As Object, ByVal i As Integer), le délégué correspondant est le suivant :

    Delegate Sub TestDelegate(ByVal sender As Object, ByVal i As Integer)
    
  2. Remplacez la liste des paramètres de l'événement personnalisé par une clause As qui spécifie le type délégué.

    Pour reprendre l'exemple précédent, la déclaration Custom Event est réécrite comme suit :

    Custom Event Test As TestDelegate
    

Exemple

Cet exemple déclare Custom Event et spécifie la clause As requise avec un type délégué.

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

Voir aussi

Référence

Event, instruction

Delegate, instruction

Autres ressources

Événements (Visual Basic)