簡體   English   中英

如何克隆菜單項的子菜單?

[英]How can I clone the child menu of a menu item?

我已經想出了如何克隆孔菜單項的方法,但是如果單擊它,它將首先打開菜單項名稱的名稱(在此示例中為常規名稱),然后向我顯示子菜單(子菜單)。 這是我現在擁有的:

Private Sub ConstruirContextMenu(ByVal MenuItem As System.Windows.Forms.MenuItem)

    Dim cmEdit = New ContextMenu
    cmEdit.MenuItems.Add(MenuItem.CloneMenu())
    'Set ContextMenu component of form
    ContextMenu = cmEdit

End Sub

這是調用該子代碼的代碼:

Private Sub Image_mnuGeneral_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Image_mnuGeneral.Click, Text_mnuGeneral.Click


    ConstruirContextMenu(Me.MainMenu.MenuItems(0))
    'Me.MainMenu.MenuItems(0).Visible = False

    ContextMenu.Show(Me.Image_mnuGeneral, New System.Drawing.Point(Me.UWP_PanelMenu.Width, 0))

    TratarOpcionesUWPMenu(UWPMenu_General)

End Sub

在這里放一張照片以更好地說明我的需求。 我需要單擊黑色菜單中的項目時,僅直接顯示子菜單。

感謝和抱歉,我的英語和解釋不好。

我通過在ConstruirContextMenu Sub添加一個簡單的For Each解決了它。 我做了這樣的事情,它的工作:

Private Sub ConstruirContextMenu(ByVal MenuItem As System.Windows.Forms.MenuItem)

    Dim cmEdit = New ContextMenu
    For Each SubMenu As System.Windows.Forms.MenuItem In MenuItem.MenuItems
        cmEdit.MenuItems.Add(SubMenu.CloneMenu())
    Next

    'Set ContextMenu component of form
    ContextMenu = cmEdit

End Sub

解決這種問題的方法很簡單,但確實有效。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM