Posso usare MenuStrip come ContextMenu?
-
08-10-2019 - |
Domanda
Ciao signore e gentiluomini!
Ho un MenuStrip
e vogliono avere un ContextMenu
con stessa struttura.
Posso utilizzare il mio MenuStrip
come ContextMenu
, o rapido creare ContextMenu
con DataSource da MenuStrip
?
Grazie!
Soluzione
Non credo che è possibile utilizzare una voce da un MenuStrip
come ContextMenuStrip
. Ho eseguito in questo prima, e sono d'accordo che un menu deve essere un menu, ma sono apparentemente implementati come diversi controlli, perché richiedono funzionalità leggermente differenti sotto le coperte.
Tuttavia, è può usare un ContextMenuStrip
come un menu a discesa per il controllo MenuStrip
. Così si può ottenere il comportamento che stai cercando facendolo il contrario. Progettare la ContextMenuStrip
tuttavia si desidera, e quindi assegnare al DropDown
proprietà per il ToolStripMenuItem
di livello superiore sul MenuStrip
che si desidera quel menu da mostrare per.
In alternativa, si può andare la strada più lunga e di creare due diverse proposte gastronomiche in Designer, ma copiare e incollare le voci da un menu all'altro. Questo almeno si risparmia il tempo di progettare due menu a guardare esattamente lo stesso. È anche possibile collegare i gestori di eventi (diciamo, per gli eventi Click
di ogni voce di menu) per gestire gli elementi da entrambi i menu. In VB.NET, per esempio, la parola chiave Handles
rende estremamente semplice:
Private Sub Exit_Click(ByVal sender As Object, ByVal e As EventArgs) _
Handles exitMenuItem.Click, exitContextMenuItem.Click
Me.Close()
End Sub
Altri suggerimenti
Se siete alla ricerca di una breve, fino al punto, risposta:. No