Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Vb.net 如何显示菜单条中的下拉项文本_Vb.net_Menustrip - Fatal编程技术网

Vb.net 如何显示菜单条中的下拉项文本

Vb.net 如何显示菜单条中的下拉项文本,vb.net,menustrip,Vb.net,Menustrip,我希望实现的是提取selectitem文本并将其显示在messagebox中(对于start,然后我将使用它进行SQL查询…) 我想提取特定的选定项,例如下图中的“SPR(Suivi工件重新更改)”: 我试过了,但当我点击“菜单”时,它返回我的菜单条“MenuStrip1”的名称: 编辑: 我忘了提到所有项目都是从数据库中动态添加的, 因此,这些项目将没有预定义的私有子…结束子程序 提前感谢。MenuStrip对象仅指实际的菜单条本身,而不是单个菜单项,它们实际上是ToolStripMenuI

我希望实现的是提取selectitem文本并将其显示在messagebox中(对于start,然后我将使用它进行SQL查询…)

我想提取特定的选定项,例如下图中的“SPR(Suivi工件重新更改)”:

我试过了,但当我点击“菜单”时,它返回我的菜单条“MenuStrip1”的名称:

编辑:

我忘了提到所有项目都是从数据库中动态添加的, 因此,这些项目将没有预定义的私有子…结束子程序


提前感谢。

MenuStrip对象仅指实际的菜单条本身,而不是单个菜单项,它们实际上是ToolStripMenuItem对象。您正在查找这些对象的文本属性。例如:

DirectCast(YourDynamicMenuItemObjectHere, ToolStripMenuItem).Text
如果您正在寻找捕获事件的方法,则需要创建一个通用事件处理程序:

Private Sub GenericMenuItem_Click(sender As System.Object, e As System.EventArgs)
    MessageBox.Show(DirectCast(sender, ToolStripMenuItem).Text)
    'Whatever else you need to do based on the text of the menu item
End Sub
然后在创建菜单项时将该处理程序挂接到菜单项:

'Code that creates YourDynamicallyGeneratedMenuItem
AddHandler YourDynamicallyGeneratedMenuItem.Click, AddressOf GenericMenuItem_Click

谢谢,最后我用嵌套for循环(3层)完成了它
'Code that creates YourDynamicallyGeneratedMenuItem
AddHandler YourDynamicallyGeneratedMenuItem.Click, AddressOf GenericMenuItem_Click