我是Visual Studio 2017的新手。我希望有一个变量充当子代码的一部分,所以与其写完整的事情,我不想只写变量。
我正在为学校项目制作菜单。我真的没有尝试过任何东西,因为我不知道代码是如何工作的。
Private Sub ckb1_CheckedChanged(sender As Object, e As EventArgs) Handles ckb1.CheckedChanged, rdbSuper.CheckedChanged, rdbPong.CheckedChanged
如何将rdbSuper.CheckedChanged, rdbPong.CheckedChanged
变成变量,以便将其放在句柄之后?
答案 0 :(得分:1)
您可以为每个Sub
-Event使用相同的代码,而不是使用CheckedChanged
,而是创建一个Sub
并将该函数绑定到事件,并使用AddHandler
:< / p>
Sub FunctionForEventCheckedChanged(sender As Object, e As EventArgs)
'Your code for the CheckedChanged-Event.
End Sub
'bind the events with the FunctionForEventCheckedChanged function.
AddHandler rdbSuper.CheckedChanged, AddressOf FunctionForEventCheckedChanged
AddHandler rdbPong.CheckedChanged, AddressOf FunctionForEventCheckedChanged
您还可以使用FunctionForEventCheckedChanged
在sender
函数内检查特定的复选框。因此,您还可以为特定的复选框创建一些代码。
这如何为您提供帮助?
您似乎想将一个功能分配给多个事件。由于您无法将事件归类到变量中,因此无法在Handles
上使用此变量,因此您可以执行以下操作(基于上述说明):
Dim arrCheckBoxes() As Control = {rdbSuper, ckb1}
For Each ctrlCheckBox As Control In arrCheckBoxes
AddHandler ctrlCheckBox.CheckedChanged, AddressOf FunctionForEventCheckedChanged
Next