Laden...

Mehrere ToolStripMenuItems klicken ohne es auszublenden

Erstellt von _Bugrick_ vor 12 Jahren Letzter Beitrag vor 12 Jahren 828 Views
_
_Bugrick_ Themenstarter:in
48 Beiträge seit 2011
vor 12 Jahren
Mehrere ToolStripMenuItems klicken ohne es auszublenden

Hallo,

ich würde gerne bei einem ToolStripMenu mehrere Items anklicken, ohne, dass das Menü direkt wieder ausgeblendet wird, nachdem ich eines angeklickt hab.

In meinem Fall soll die Checked-Eigenschaft immer geändert werden, und das unter umständen von mehreren Items. Nur ist das nervig, wenn man das Menü immer wieder herholen muss.

Ich habe leider nur weder eine Property, noch sonst irgendwas im Netz gefunden, um das einzustellen. Weiß hier jemand einen Rat?

Danke schomal!

D
201 Beiträge seit 2007
vor 12 Jahren

Hallo,

auch wenn das Thema glaube ich schonmal besprochen wurde, ich habe es in etwa so gelöst:

Für alle Items, die das Menü nicht schliessen sollen, dass Closing-event registrieren und so implementieren:


    private void menuItem_Closing(object sender, ToolStripDropDownClosingEventArgs e)
    {
      e.Cancel = e.CloseReason == ToolStripDropDownCloseReason.ItemClicked;
    }

Hinweis von herbivore vor 12 Jahren

Ja, das wurde schon besprochen und es ist auch gar nicht lange her: ContextMenu soll nicht schließen wenn auf ein ToolStrip geklickt wird

_
_Bugrick_ Themenstarter:in
48 Beiträge seit 2011
vor 12 Jahren

Achso, na wenn man die DropDown-Eigenschaft erstmal kennt, wird so einiges klar.

Dann ist sogar

ParentMenu.DropDown.AutoClose = false;

der wohl noch einfachere Weg. Danke dir, hat mir sehr geholfen! 😃

D
201 Beiträge seit 2007
vor 12 Jahren

Gern geschehen.

Dann ist sogar

ParentMenu.DropDown.AutoClose = false;  

der wohl noch einfachere Weg.

Stimmt, allerdings kannst du es mit meiner Variante auch von einzelnen Menüpunkten abhängig machen. Manchmal kann das auch praktisch sein.

_
_Bugrick_ Themenstarter:in
48 Beiträge seit 2011
vor 12 Jahren

Und eben ist noch ein weiteres Problem aufgetaucht: Mit AutoClose geht das ja dann gar nicht mehr weg 😦 Also muss doch ein Event erzeugt werden.