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!

È stato utile?

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

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top