Can I split a menu into multiple columns in WinForms?
Asked Answered
P

2

7

A menu in an application of mine is going to contain too many items to be displayed in a single vertical row. Splitting it into 2 menus does not look a good solution as it would break UI semantics. Can I just set up one menu to be displayed with multiple columns (like Windows XP classic Start menu in case of vertical overflow)?

Postiche answered 12/2, 2011 at 21:49 Comment(1)
Note that menus with significantly more than ~ 10 items are really hard to use (one reason why Office went with the ribbon in 2007).Sheeran
U
3

How about creating some levels for the menu instead of splitting the menu vertically? Can't your options be grouped?

EDIT:

Don't know why I've been downvoted, but if you don't want to break the semantics of the menu and:

  • create unreadable menus of 50-ish items in length
  • or create such menus and then forcefully break them in columns

then you have to do something else, and grouping and levels are here to the rescue.

Unmuzzle answered 12/2, 2011 at 21:54 Comment(5)
In my case it's going to break the idea as well. PS: the downvote isn't mine.Postiche
Hmmmm, maybe you want to go for the some kind of switchboard, that you can create as a form with buttons for your menu options. You can then create top level menu option that triggers that switchboard, place the switchboard just where the menu should be opened, and here you go :)Etoile
I’ll speak up to having downvoted this, and I’ll explain why. I find this answer too presumptuous. There are many cases where menus with many items make sense. Consider for example a menu where the user selects a letter of the alphabet. Arranging that in columns is better UI than a single long list or submenus. It is not fair of you to presume that the way the OP is planning to use columns is inherently bad design. — Furthermore, the answer doesn’t even answer the question, which is worth a downvote in its own right. If you just want to advice against the practice, you can do so in a comment.Mediator
The down-vote was simply because you didn't answer the question as it was asked. There's nothing more annoying to me than when I ask a question which is pretty specific like "How to accomplish task A" and I get answers like "You shouldn't be trying to do that" or "Why don't you do task B instead".Heyerdahl
@Milky - even if you are 100% absolutely sure that person are about to break his leg, you won't tell him to try to go to a bar instead jumping of a cliff? :)Etoile
F
0

Yes you can change your approach a bit and use a split container, using the left panel as the menu and the right panel as the content panel.

This would allow you the flexibility to arrange your menu buttons in anyway you like

From answered 13/2, 2011 at 1:2 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.