MenuItem::PerformClick Method ()

 

Generates a Click event for the MenuItem, simulating a click by a user.

Namespace:   System.Windows.Forms
Assembly:  System.Windows.Forms (in System.Windows.Forms.dll)

public:
void PerformClick()

You can use this menu to activate a menu item through code without passing any event information. For example, if you want to activate a menu item based on an action that occurs in your application, you can call the PerformClick method for that MenuItem.

In this example you programmatically click a menu item by using the PerformClick method. First, you create a main menu (mainMenu1) and add to it two menu items, menuItem1 (File) and menuItem2 (Edit). You also use the Click event to send data to the event handler when a menu item is clicked. Then you use the PerformClick method to click the File menu item. When you start the application, the File menu item is activated, and a message box that contains the text "The File menu is clicked." appears on the screen. The example requires that you have created a Form named Form1.

public:
   void CreateMyMenu()
   {
      // Create a main menu object.
      MainMenu^ mainMenu1 = gcnew MainMenu;

      // Create empty menu item objects.
      MenuItem^ menuItem1 = gcnew MenuItem;
      MenuItem^ menuItem2 = gcnew MenuItem;

      // Set the caption of the menu items.
      menuItem1->Text = "&File";
      menuItem2->Text = "&Edit";

      // Add the menu items to the main menu.
      mainMenu1->MenuItems->Add( menuItem1 );
      mainMenu1->MenuItems->Add( menuItem2 );

      // Add functionality to the menu items.
      menuItem1->Click += gcnew System::EventHandler( this, &Form1::menuItem1_Click );
      menuItem2->Click += gcnew System::EventHandler( this, &Form1::menuItem2_Click );

      // Assign mainMenu1 to the form.
      this->Menu = mainMenu1;

      // Perform a click on the File menu item.
      menuItem1->PerformClick();
   }

private:
   void menuItem1_Click( Object^ /*sender*/, System::EventArgs^ /*e*/ )
   {
      MessageBox::Show( "You clicked the File menu.", "The Event Information" );
   }

   void menuItem2_Click( Object^ /*sender*/, System::EventArgs^ /*e*/ )
   {
      MessageBox::Show( "You clicked the Edit menu.", "The Event Information" );
   }

.NET Framework
Available since 1.1
Return to top
Show: