将工具条菜单项的名称输入到消息框中

时间:2014-12-07 20:47:19

标签: vb.net menustrip

我有一个工具条菜单,其条目名为" General"。当表单被加载时,子项被添加到" General"条目是读取文件夹中文本文件的文件名的结果。

我希望能够捕获子项的名称,并将它们添加到通用形式的标签中,该标签是通过单击子项调用的。

我尝试使用MsgBox(DirectCast(sender, ToolStripMenuItem).Text)尝试最初捕获文本,然而,它只是给了我" General"消息框中的菜单项

我目前在DropDownItemClicked事件

中使用此代码

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

子菜单项位于集合ToolStripMenuItem.DropDownItems中。您可以遍历集合并选择ToolStripMenuItems。并非菜单中的每个项目都是ToolStripMenuItem(有分隔符,按钮等),因此您可以使用ToolStripItem进行循环。

此示例将所有子菜单项放在消息框中:

Private Sub mnuDraw_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mnuDraw.Click

Dim s As String = ""
For Each item As ToolStripItem In sender.DropDownItems
  If TypeOf (item) Is ToolStripMenuItem Then s &= item.Text & vbCrLf
  Next item
MsgBox(s)

End Sub