我有两个对象,A 和 B,两个对象都有相同的方法,称为 Hi。所以 A.hi 会显示一个消息框说“hi I'm A”,B.hi 会显示一个消息说“hi I'm 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
我该怎么做?