MainMenu Class
Represents the menu structure of a form. Although MenuStrip replaces and adds functionality to the MainMenu control of previous versions, MainMenu is retained for both backward compatibility and future use if you choose.
Assembly: System.Windows.Forms (in System.Windows.Forms.dll)
System::MarshalByRefObject
System.ComponentModel::Component
System.Windows.Forms::Menu
System.Windows.Forms::MainMenu
| Name | Description | |
|---|---|---|
![]() | MainMenu() | Initializes a new instance of the MainMenu class without any specified menu items. |
![]() | MainMenu(IContainer^) | Initializes a new instance of the MainMenu class with the specified container. |
![]() | MainMenu(array<MenuItem^>^) | Initializes a new instance of the MainMenu with a specified set of MenuItem objects. |
| Name | Description | |
|---|---|---|
![]() | CanRaiseEvents | Gets a value indicating whether the component can raise an event.(Inherited from Component.) |
![]() | Container | Gets the IContainer that contains the Component.(Inherited from Component.) |
![]() | DesignMode | |
![]() | Events | |
![]() | Handle | Gets a value representing the window handle for the menu.(Inherited from Menu.) |
![]() | IsParent | Gets a value indicating whether this menu contains any menu items. This property is read-only.(Inherited from Menu.) |
![]() | MdiListItem | |
![]() | MenuItems | |
![]() | Name | |
![]() | RightToLeft | Gets or sets whether the text displayed by the control is displayed from right to left. |
![]() | Site | |
![]() | Tag | Gets or sets user-defined data associated with the control.(Inherited from Menu.) |
| Name | Description | |
|---|---|---|
![]() | CloneMenu() | Creates a new MainMenu that is a duplicate of the current MainMenu. |
![]() | CloneMenu(Menu^) | |
![]() | CreateMenuHandle() | Creates a new handle to the Menu.(Overrides Menu::CreateMenuHandle().) |
![]() | CreateObjRef(Type^) | Creates an object that contains all the relevant information required to generate a proxy used to communicate with a remote object.(Inherited from MarshalByRefObject.) |
![]() | Dispose() | |
![]() | Dispose(Boolean) | Disposes of the resources, other than memory, used by the MainMenu.(Overrides Menu::Dispose(Boolean).) |
![]() | Equals(Object^) | Determines whether the specified object is equal to the current object.(Inherited from Object.) |
![]() | Finalize() | |
![]() | FindMenuItem(Int32, IntPtr) | |
![]() | FindMergePosition(Int32) | Returns the position at which a menu item should be inserted into the menu.(Inherited from Menu.) |
![]() | GetContextMenu() | Gets the ContextMenu that contains this menu.(Inherited from Menu.) |
![]() | GetForm() | Gets the Form that contains this control. |
![]() | GetHashCode() | Serves as the default hash function. (Inherited from Object.) |
![]() | GetLifetimeService() | Retrieves the current lifetime service object that controls the lifetime policy for this instance.(Inherited from MarshalByRefObject.) |
![]() | GetMainMenu() | Gets the MainMenu that contains this menu.(Inherited from Menu.) |
![]() | GetService(Type^) | |
![]() | GetType() | |
![]() | InitializeLifetimeService() | Obtains a lifetime service object to control the lifetime policy for this instance.(Inherited from MarshalByRefObject.) |
![]() | MemberwiseClone() | |
![]() | MemberwiseClone(Boolean) | Creates a shallow copy of the current MarshalByRefObject object.(Inherited from MarshalByRefObject.) |
![]() | MergeMenu(Menu^) | |
![]() | OnCollapse(EventArgs^) | Raises the Collapse event. |
![]() | ProcessCmdKey(Message%, Keys) | Processes a command key.(Inherited from Menu.) |
![]() | ToString() | This API supports the product infrastructure and is not intended to be used directly from your code. Returns a string that represents the MainMenu.(Overrides Menu::ToString().) |
The MainMenu control represents the container for the menu structure of a form. A menu is composed of MenuItem objects that represent the individual menu commands in the menu structure. Each MenuItem can be a command for your application or a parent menu for other submenu items. To bind the MainMenu to the Form that will display it, assign the MainMenu to the Menu property of the Form.
For applications that will have support for multiple languages, you can use the RightToLeft property to display the text of the menu from right to left to support languages such as Arabic.
You can create different MainMenu objects to represent different menu structures for your form. If you want to reuse the menu structure contained in a specific MainMenu, you can use its CloneMenu method to create a copy. Once you have a copy of the menu structure, you can make the appropriate modifications for your new menu structure.
Note |
|---|
Cutting and pasting menu items from one form to another in the designer might not work as expected if the form you are pasting into has no menu items defined. |
The following code example creates a MainMenu, assigns two MenuItem objects to the MainMenu and binds it to a form. This example requires that you have a Form created that is named Form1.
void CreateMyMainMenu() { // Create an empty MainMenu. MainMenu^ mainMenu1 = gcnew MainMenu; MenuItem^ menuItem1 = gcnew MenuItem; MenuItem^ menuItem2 = gcnew MenuItem; menuItem1->Text = "File"; menuItem2->Text = "Edit"; // Add two MenuItem objects to the MainMenu. mainMenu1->MenuItems->Add( menuItem1 ); mainMenu1->MenuItems->Add( menuItem2 ); // Bind the MainMenu to Form1. Menu = mainMenu1; }
Available since 1.1
Any public static ( Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.





