A と B の 2 つのオブジェクトがあり、両方のオブジェクトに Hi という同じメソッドがあります。したがって、A.hi は「こんにちは、私は A です」というメッセージボックスを表示し、B.hi は「こんにちは、私は B です」というメッセージを表示します。どちらにも、このメソッドをアクティブにするボタンがあります。
これらの両方のイベントを同じハンドラーで処理するにはどうすればよいですか?
例えば、別々にやったら、Aにこれを持っていきます。
Private Sub btnHi_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnHiClassA.Click
A.hi
End Sub
同じハンドラーで両方のイベントを処理したいのですが、このロジックで面倒なバージョンを実行できました。
Private Sub btnHi_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnHiClassA.Click, btnHiClassB.Click
if sender is btnHiClassA then
A.hi
elseif sender is btnHiClassB then
B.hi
end if
End Sub
理想的には、次のようになります。
Private Sub btnHi_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnHiClassA.Click, btnHiClassB.Click
'theObject = sender
'theObject.hi
End Sub
どうすればいいですか?