Utilizando MultiCast Delegates no VB.NET

MultiCast delegate é a possibilidade de inserirmos dentro de um delegate mais de um ponteiro para sub/function.

Com isso, quando o Invoke do delegate for disparado todas as subs/functions que houverem sido inseridas no delegate serão disparadas.

 

Veja um exemplo simples (apenas para demonstrar a síntaxe em VB.NET) :

 

Delegate Sub testando()

 

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

Dim x As New testando(AddressOf teste)

x = x.Combine(x, New testando(AddressOf teste2))

x.Invoke()

End Sub

 

Public Sub teste()

MsgBox("A")

End Sub

 

Public Sub teste2()

MsgBox("B")

End Sub