Using a Windows 7 style menustrip in Windows Forms

Nilbert picture Nilbert · Jun 1, 2010 · Viewed 11k times · Source

Possible Duplicate:
Standard Windows menu bars in Windows Forms

I am using windows forms and when I use a MenuStrip item, I get something that looks like this:

http://imgkk.com/i/ggn1.png

Is it possible to use menu strips like the ones the system uses, like in Windows Explorer, or Firefox, for example:

http://imgkk.com/i/cxyg.png

with Windows Forms, or C# in general?

Answer

adrianbanks picture adrianbanks · Jun 1, 2010

Try using a MainMenu instead of a MenuStrip. The MainMenu will pick up the underlying operating system's current style, whereas the MenuStrip does not. Even though MainMenu was replaced with MenuStrip, it is still supported going forwards (according to the MSDN docs).

MenuStrip is rendered entirely in C# and does not use the current operating system's styles, whereas the MainMenu control renders using the underlying OS API and does.

MainMenu might not be in your toolbox. To add it, right click in the toolbox, select "Choose Items..." and then make sure the MainMenu item is checked.

This article explains the differences between MainMenu and MenuStrip in more depth.