在捕获事件的情况下,VB.NET中是否有一种方法可以在代码片段中复制C#行为?
即。 在C#中:
Btn.Click+=
然后双选项卡。为btn.click事件创建一个处理程序。
答案 0 :(得分:5)
在C#中,您只能使用+=
显式连接事件。 VB等价物是AddHandler
。
但VB也允许你connect events implicitly using the Handles
keyword。请注意,VB事件处理比C#更灵活。
有几种方法可以使用Handles
自动创建事件处理程序代码。
在设计视图中,只需双击该按钮即可。
或者,再次在设计视图中:
一个。在按钮的属性窗口中,单击“闪电”以查看事件。
湾双击Click
事件。
或者,在代码视图中,您可以使用窗口顶部的两个下拉菜单
一个。选择左侧的按钮。
湾在右侧选择Click
事件。
编辑:在VB.Net 2010中,您可以使用statement lambdas处理事件。例如:
AddHandler b.Click, _
Sub(sender As Object, e As EventArgs)
MsgBox("Button Clicked")
'insert more complex logic here
End Sub
好的,所以也许您知道隐式事件处理和匿名方法,并且您仍然认为您确实需要始终从AddHandler
连接显式本地方法。也许有一个支持它的第三方加载项。也许是CodeRush,我不知道(如果有人知道请发表评论)。或者您甚至可以创建自己的加载项。
答案 1 :(得分:3)
奇怪的是,VB.NET团队没有在Visual Studio中实现这样的功能。