BC31122: "Anpassad" modifierare är inte giltig för händelser som deklareras utan explicita ombudstyper

Till skillnad från en icke-anpassad händelse kräver en Custom Event deklaration en As sats som följer händelsenamnet som uttryckligen anger ombudstypen för händelsen.

Icke-anpassade händelser kan definieras antingen med en As sats och en explicit ombudstyp, eller med en parameterlista omedelbart efter händelsenamnet.

Fel-ID: BC31122

Så här åtgärdar du det här felet

  1. Definiera ett ombud med samma parameterlista som den anpassade händelsen.

    Om till Custom Event exempel definierades av Custom Event Test(ByVal sender As Object, ByVal i As Integer)skulle motsvarande ombud vara följande.

    Delegate Sub TestDelegate(ByVal sender As Object, ByVal i As Integer)
    
  2. Ersätt parameterlistan för den anpassade händelsen med en As sats som anger ombudstypen.

    Om du fortsätter med exemplet Custom Event skrivs deklarationen om på följande sätt.

    Custom Event Test As TestDelegate
    

Exempel

Det här exemplet deklarerar en Custom Event och anger den obligatoriska As satsen med en delegattyp.

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

Se även