イベントハンドラの定義

private function foo2(byval bar as integer) as boolean
    dim WithEvents obClass1 as new Class1 
    private sub objClassOnChange(byval system.sender As Object, byval e As system.EventArgs) Handles objClass1.Change
        MessageBox.Show("Class1 OnChange", Me.Text, MessageBoxButtons.OK, MessageBoxIcon.Information)
    end sub

    dim WithEvents obClass2 as new Class12
    private sub objClassOnChange(byval system.sender As Object, byval e As myEventArgs) Handles objClass2.Change
        MessageBox.Show("Class2 OnChange. Message:" + e.msg, Me.Text, MessageBoxButtons.OK, MessageBoxIcon.Information)
    end sub
end function

・動的にハンドラを生成

private function foo(byval bar as integer) as boolean
    dim obClass1 as new Class1 

    AddHandler obClass1.Change, AddressOf objClass1_OnChange
end function

private sub objClass1_OnChange(byval system.sender As Object, byval e As system.EventArgs) 
    MessageBox.Show("Class1 OnChange", Me.Text, MessageBoxButtons.OK, MessageBoxIcon.Information)
end sub