How to: Invoke a Delegate Method (Visual Basic)

This example shows how to associate a method with a delegate and then invoke that method through the delegate.

Create the delegate and matching procedures

  1. Create a delegate named MySubDelegate.

    Delegate Sub MySubDelegate(ByVal x As Integer)  
  2. Declare a class that contains a method with the same signature as the delegate.

    Class class1  
        Sub Sub1(ByVal x As Integer)  
            MsgBox("The value of x is: " & CStr(x))  
        End Sub  
    End Class  
  3. Define a method that creates an instance of the delegate and invokes the method associated with the delegate by calling the built-in Invoke method.

    Protected Sub DelegateTest()  
        Dim c1 As New class1  
        ' Create an instance of the delegate.  
        Dim msd As MySubDelegate = AddressOf c1.Sub1  
        ' Call the method.  
    End Sub  

See also