Nadjoh vremena da se malo pozabavim ovim i otkrijem kako radi (onako kako sam i pretpostavljao).
U pozadini se kreira dodatna funkcija koja se zaista doda kao event handler i ima ispravan potpis a ona pozove funkciju koju smo mi napravili.
Ovo je kod koji VS kreira u pozadini i kompajlira:
Code (vbnet):
Private Sub Form1_Load(ByVal sender As Object, ByVal e As EventArgs)
Dim btn As New Button
Me.Controls.Add(btn)
AddHandler btn.Click, New EventHandler(AddressOf Me._Lambda$__1)
End Sub
Private Sub _Lambda$__1(ByVal a0 As Object, ByVal a1 As EventArgs)
Me.onbuttonclick
End Sub
Ovo radi samo sa funkcijom koja nema argumenata jer inace ova generisana ne bi znala sta da prosledi.