Menu.GetMainMenu Method

Gets the MainMenu that contains this menu.

Namespace: System.Windows.Forms
Assembly: System.Windows.Forms (in system.windows.forms.dll)

public MainMenu GetMainMenu ()
public MainMenu GetMainMenu ()
public function GetMainMenu () : MainMenu
Not applicable.

Return Value

The MainMenu that contains this menu.

This method allows you to obtain a reference to the MainMenu this menu is currently located in. This property returns a null reference (Nothing in Visual Basic) if the menu is not contained in a MainMenu. This can occur if the menu is contained in a MenuItem or ContextMenu, or if the menu is not contained in any menu. You can use this property to determine whether a menu is currently being used, and also to determine where.

This example declares a MainMenu, mainMenu1, and four menu items, menuItem1, menuItem2, menuItem3, and menuItem4. Only the first three menu items are added to mainMenu1 for display. The program then checks to see if menuItem3 is being used, which is true, and determines the form in which it is used. A label text is used to display the name of the form that hosts the MainMenu. If you change the menu item being tested to menuItem4, the condition evaluates to false because menuItem4 has never been used. This example requires that you have created a Form named MyForm that includes a Label named label1.

private void InitializeMyMainMenu()
{
    // Create the MainMenu and the menu items to add.
    MainMenu mainMenu1 = new MainMenu();

    MenuItem menuItem1 = new MenuItem();
    MenuItem menuItem2 = new MenuItem();
    MenuItem menuItem3 = new MenuItem();
    MenuItem menuItem4 = new MenuItem();

   
    // Set the caption for the menu items.
    menuItem1.Text = "File";
    menuItem2.Text = "Edit";
    menuItem3.Text = "View";

    // Add 3 menu items to the MainMenu for displaying.
    mainMenu1.MenuItems.Add(menuItem1);
    mainMenu1.MenuItems.Add(menuItem2);
    mainMenu1.MenuItems.Add(menuItem3);

    // Assign mainMenu1 to the form.
    Menu = mainMenu1;

    // Determine whether menuItem3 is currently being used.
    if(menuItem3.GetMainMenu() != null)
        // Display the name of the form in which it is located.
        label1.Text= menuItem3.GetMainMenu().GetForm().ToString();
}

private void InitializeMyMainMenu()
{        
    // Create the MainMenu and the menu items to add.
    MainMenu mainMenu1 = new MainMenu();
    MenuItem menuItem1 = new MenuItem();
    MenuItem menuItem2 = new MenuItem();
    MenuItem menuItem3 = new MenuItem();
    MenuItem menuItem4 = new MenuItem();

    // Set the caption for the menu items.
    menuItem1.set_Text("File");
    menuItem2.set_Text("Edit");
    menuItem3.set_Text("View");

    // Add 3 menu items to the MainMenu for displaying.
    mainMenu1.get_MenuItems().Add(menuItem1);
    mainMenu1.get_MenuItems().Add(menuItem2);
    mainMenu1.get_MenuItems().Add(menuItem3);

    // Assign mainMenu1 to the form.
    set_Menu(mainMenu1);

    // Determine whether menuItem3 is currently being used.
    if (menuItem3.GetMainMenu() != null) {
        // Display the name of the form in which it is located.
        label1.set_Text(menuItem3.GetMainMenu().GetForm().ToString());
    }
} //InitializeMyMainMenu

Windows 98, Windows Server 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

The Microsoft .NET Framework 3.0 is supported on Windows Vista, Microsoft Windows XP SP2, and Windows Server 2003 SP1.

.NET Framework

Supported in: 3.0, 2.0, 1.1, 1.0

Community Additions

ADD
Show: