2014-12-07 27 views
1

我有一個工具條菜單,其條目名爲「常規」。當表單被加載時,子項目被添加到「常規」條目中,這是讀取文件夾中文本文件的文件名的結果。獲取工具條菜單項的名稱到消息框中

我希望能夠捕獲子項目的名稱,並將其添加到通用形式的標籤中,通過點擊該子項目來調用該通用形式。

我企圖最初捕獲文本使用MsgBox(DirectCast(sender, ToolStripMenuItem).Text)試過了,但是,它只是給我的「常規」菜單中的消息框

我目前使用此代碼在DropDownItemClicked事件項

任何想法?

回答

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 
+0

謝謝,可能是有點愚蠢的,但我不完全知道你的意思 – elmonko 2014-12-07 21:17:00

+0

,如果你不具備所有這不是愚蠢的這些信息......我會更好地解釋一下。 – xpda 2014-12-07 21:21:00

+0

我現在明白了,謝謝 - 只需要適應它,只顯示選定的菜單項 – elmonko 2014-12-07 21:54:48