Domanda

I creare un modulo semplice con un MenuStrip. LayoutStyle del MenuStrip è impostato su HorizontalStackWithOverflow (impostazione predefinita).

Secondo la di riferimento MSDN su MenuStrip , la sua proprietà LayoutStyle è ereditato da ToolStrip. Uno dei possibili valori LayoutStyle è HorizontalStackWithOverflow che è anche l'impostazione predefinita. Questa impostazione dovrebbe fornire gli elementi con il suo insieme di proprietà Overflow a ASNEEDED vengono spostati a un tasto di overflow.

Quando eseguo l'applicazione e ridimensionare il form in modo che il menu non si adatta completamente, questo non accade. Ho impostato la mia proprietà ToolStripMenuItems Overflow per ASNEEDED, ma quando ho ridimensionare la forma, le voci del menu a destra semplicemente sparire.

è il male documentazione e si può ottenere solo overflowbutton su un ToolStrip e non su un MenuStrip? O c'è qualcos'altro che devo fare per far funzionare le cose? O sto solo fraintendendo la documentazione?

È stato utile?

Soluzione

Ho appena avuto lo stesso problema, e ha trovato un modo per farlo funzionare.

Al MenuStrip è necessario impostare:

myMenuStrip.CanOverflow = True

Il valore predefinito è falso.

Poi, per ogni MenuItem è necessario impostare:

myToolStripMenuItem.Overflow = ToolStripItemOverflow.AsNeeded

o

myToolStripMenuItem.Overflow = ToolStripItemOverflow.Always

L'impostazione predefinita è ToolStripItemOverflow.Never

References:

MenuStrip.CanOverflow

ToolStripMenuItem.Overflow

Altri suggerimenti

Le classi ToolStrip hanno un sacco di peli come questo. Credo che la selezione appropriata qui è LayoutStyle = Portata per ottenere le voci di menu avvolti. Questo è il modo in cui il built-in di lavoro Windows menu.

Dovete comunque di prendersi cura del problema layout di questo cause. Mettere un pannello sul modulo con Dock = Fill in modo che tutti i controlli si spostano automaticamente quando la barra di menu ha bisogno di più spazio.

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