Поделиться через


Практическое руководство. Вызов метода Delegate

Обновлен: Ноябрь 2007

Этот пример показывает, как связать метод с делегатом, а затем вызвать метод через делегат.

Создание делегата и согласование процедур

  1. Создайте делегата с именем MySubDelegate.

        Delegate Sub MySubDelegate(ByVal x As Integer)
    
  2. Объявите класс, содержащий метод с той же подписью, что и у делегата.

        Class class1
            Sub Sub1(ByVal x As Integer)
                MsgBox("The value of x is: " & CStr(x))
            End Sub
        End Class
    
  3. Определите метод, который создает экземпляр делегата и вызывает метод, связанный с делегатом, вызвав встроенный метод Invoke.

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

См. также

Задачи

Практическое руководство. Написание обработчиков событий

Основные понятия

Делегаты и оператор AddressOf

События и обработчики событий

Операторы AddHandler и RemoveHandler

Многопоточные приложения

Ссылки

Оператор Delegate