BC31122: 'Aangepaste' wijzigingsfunctie is niet geldig voor gebeurtenissen die zijn gedeclareerd zonder expliciete gedelegeerdentypen

In tegenstelling tot een niet-aangepaste gebeurtenis is voor een Custom Event declaratie een As component vereist die de naam van de gebeurtenis volgt die expliciet het type gedelegeerde voor de gebeurtenis aangeeft.

Niet-aangepaste gebeurtenissen kunnen worden gedefinieerd met een As component en een expliciet gemachtigd type, of met een parameterlijst direct na de naam van de gebeurtenis.

Fout-id: BC31122

Deze fout corrigeren

  1. Definieer een gemachtigde met dezelfde parameterlijst als de aangepaste gebeurtenis.

    Als de Custom Event gedelegeerde bijvoorbeeld is gedefinieerd door Custom Event Test(ByVal sender As Object, ByVal i As Integer), is de bijbehorende gemachtigde het volgende.

    Delegate Sub TestDelegate(ByVal sender As Object, ByVal i As Integer)
    
  2. Vervang de parameterlijst van de aangepaste gebeurtenis door een As component waarmee het type gemachtigde wordt opgegeven.

    Als u verdergaat met het voorbeeld, Custom Event wordt de declaratie als volgt herschreven.

    Custom Event Test As TestDelegate
    

Voorbeeld

In dit voorbeeld wordt een Custom Event en de vereiste As component met een gemachtigde opgegeven.

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

Zie ook