Vb.net 如何引用事件处理程序

Vb.net 如何引用事件处理程序,vb.net,subroutine,Vb.net,Subroutine,我想激活主子程序中的事件处理程序(即listbox1_selectedindexchanged) 例如: Private sub main() listbox1_selectedindexchanged() end sub 但是,我应该为参数“e”和“sender”设置什么,其中e是system.eventargs和sender是对象???如果在列表框1\u SelectedIndexChanged()方法中不使用sender和e参数,则可以这样调用 ListBox1_SelectedIn

我想激活主子程序中的事件处理程序(即listbox1_selectedindexchanged)

例如:

Private sub main()

listbox1_selectedindexchanged()

end sub

但是,我应该为参数“e”和“sender”设置什么,其中e是system.eventargs和sender是对象???

如果在
列表框1\u SelectedIndexChanged()
方法中不使用
sender
e
参数,则可以这样调用

ListBox1_SelectedIndexChanged(New Object, New EventArgs)

最干净的解决方案是从事件处理程序中提取要共享的代码,并将其移动到单独的方法中。您不需要调用事件处理程序,而是从事件处理程序和您的sub-main调用该方法

但是,如果要直接调用事件处理程序,可以将控件指定为发送方(在本例中为
listbox1
),并将
EventArgs.Empty
(谢谢@AndrewMorton)指定为参数“e”:


EventArgs.Empty
可用。@AndrewMorton:谢谢你的提示。效率应该稍微高一点。
listbox1_selectedindexchanged(listbox1, EventArgs.Empty)