Vb.net ToolStrip控件,如何以编程方式访问单击事件
我有以下代码:Vb.net ToolStrip控件,如何以编程方式访问单击事件,vb.net,toolstrip,Vb.net,Toolstrip,我有以下代码: Private holdAllDataFromFile As New list(Of String) holdAllDataFromFile = ReadWrite.ReadAll(FILE_PATH) 'Uses custom class to read/write. For Each item In holdAllDataFromFile.AsEnumerable menuConnections.DropDownItems.Add(finalData(1).t
Private holdAllDataFromFile As New list(Of String)
holdAllDataFromFile = ReadWrite.ReadAll(FILE_PATH) 'Uses custom class to read/write.
For Each item In holdAllDataFromFile.AsEnumerable
menuConnections.DropDownItems.Add(finalData(1).tostring ) 'save to menu
Next
在运行时,我希望能够单击这些菜单项并让它们响应事件,但我不确定如何以编程方式访问它们,因为可能有1、4、10个不同的菜单项,所有菜单项都具有不同的名称
我一直在寻找类似于我的,但我不确定这是否是正确的方式为我实现这一点。有什么想法吗
谢谢首先删除您的点击事件代码:
Private Sub DataFile_Click(ByVal sender As Object, ByVal e As EventArgs)
MessageBox.Show("Clicked on " & DirectCast(sender, ToolStripMenuItem).Text)
End Sub
“sender”参数将是您添加的ToolStripMenuItem
然后可以更改循环以添加事件处理程序:
For Each item In holdAllDataFromFile
menuConnections.DropDownItems.Add(item, _
Nothing, _
AddressOk DataFile_Click)
Next
我将“finalData(1).tostring”改为“item”,因为这是循环变量。目前还不清楚finalData变量来自何处,也不清楚这与循环有什么关系。由于holdAllDataFromFile已经是一个列表(字符串),我还去掉了一个可计算的。请先去掉单击事件代码:
Private Sub DataFile_Click(ByVal sender As Object, ByVal e As EventArgs)
MessageBox.Show("Clicked on " & DirectCast(sender, ToolStripMenuItem).Text)
End Sub
“sender”参数将是您添加的ToolStripMenuItem
然后可以更改循环以添加事件处理程序:
For Each item In holdAllDataFromFile
menuConnections.DropDownItems.Add(item, _
Nothing, _
AddressOk DataFile_Click)
Next
我将“finalData(1).tostring”改为“item”,因为这是循环变量。目前还不清楚finalData变量来自何处,也不清楚这与循环有什么关系。我还去掉了一个numerable,因为holdAllDataFromFile已经是一个列表(字符串)。另一篇文章上的技术在我看来很好。另一篇文章上的技术在我看来很好。