Export (0) Print
Expand All

Menu.GetContextMenu Method

Gets the ContextMenu that contains this menu.

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

public ContextMenu GetContextMenu()

Return Value

Type: System.Windows.Forms.ContextMenu
The ContextMenu that contains this menu. The default is null.

This method allows you to obtain a reference to the ContextMenu that this menu is contained in. This property returns null if the menu is not contained in a ContextMenu. This can occur if the menu is contained in a MenuItem or MainMenu, 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.

In this example, you use the GetContextMenu method to obtain a reference to the shortcut menu that contains menuItem1 or menuItem2, and display the shortcut menu information in a message box. You programmatically create a shortcut menu with two items, New and Open. You then add functionality to these items by creating the appropriate event handlers. When you run the example, you get a message box that tells you to right-click the form in order to display the shortcut menu. Then, when you click a menu item, you get another message that tells which item has been clicked and displays the information on the containing shortcut menu. This example requires that you have already created a Form named Form1.

		public void AddContextmenu()
		{
			// Create a shortcut menu.
			ContextMenu m = new ContextMenu();
			this.ContextMenu= m;

			// Create MenuItem objects.
			MenuItem menuItem1 = new MenuItem();
			MenuItem menuItem2 = new MenuItem();
			
			// Set the Text property.
			menuItem1.Text = "New";
			menuItem2.Text = "Open";

			// Add menu items to the MenuItems collection.
			m.MenuItems.Add(menuItem1);
			m.MenuItems.Add(menuItem2);

			// Display the starting message.
			MessageBox.Show("Right-click the form to display the shortcut menu items");


			// Add functionality to the menu items. 
			menuItem1.Click += new System.EventHandler(this.menuItem1_Click);
			menuItem2.Click += new System.EventHandler(this.menuItem2_Click);
			}

		private void menuItem1_Click(object sender, System.EventArgs e)
		{
			string textReport =	"You clicked the New menu item. \n" +
				"It is contained in the following shortcut menu: \n\n"; 
		
			// Get information on the shortcut menu in which menuitem1 is contained.
			textReport += ContextMenu.GetContextMenu().ToString();

			// Display the shortcut menu information in a message box.
			MessageBox.Show(textReport,"The ContextMenu Information");		
		}

		private void menuItem2_Click(object sender, System.EventArgs e)
		{
			string textReport =	"You clicked the Open menu item. \n" +
				"It is contained in the following shortcut menu: \n\n"; 
		
			// Get information on the shortcut menu in which menuitem1 is contained.
			textReport += ContextMenu.GetContextMenu().ToString();

			// Display the shortcut menu information in a message box.
			MessageBox.Show(textReport,"The ContextMenu Information");		
		}

Windows 7, Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2008 R2, Windows Server 2008, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98

The .NET Framework and .NET Compact Framework do not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

.NET Framework

Supported in: 3.5, 3.0, 2.0, 1.1, 1.0

Community Additions

ADD
Show:
© 2014 Microsoft