Menu 類別

定義

表示所有功能表的基礎功能。

此類別在 .NET Core 3.1 和更新版本中無法使用。 請改用 ToolStripDropDownToolStripDropDownMenu,以取代和擴充 Menu 控制項。

public ref class Menu abstract : System::ComponentModel::Component
[System.ComponentModel.ListBindable(false)]
public abstract class Menu : System.ComponentModel.Component
[<System.ComponentModel.ListBindable(false)>]
type Menu = class
    inherit Component
Public MustInherit Class Menu
Inherits Component
繼承
衍生
屬性

範例

下列程式碼範例會使用衍生類別 , MenuItem 建立表單的功能表結構。 範例程式碼會新增 MenuItem 來代表最上層功能表項目、將子功能表專案新增至其中以選取字型大小,然後將兩個子功能表項目目新增至代表應用程式中大字型和小型字型選項的功能表項目。 此範例會要求有名為 mainMenu1 的物件,以及名為 menuItem1menuItem3 menuItem2 和 的 menuItem4MenuItemMainMenu 物件。

public:
   void CreateMyMenu()
   {
      // Set the caption for the top-level menu item.
      menuItem1->Text = "Edit";
      // Set the caption for the first submenu.
      menuItem2->Text = "Font Size";
      // Set the caption for menuItem2's first submenu.
      menuItem3->Text = "Small";
      // Set the checked property to true since this is the default value.
      menuItem3->Checked = true;
      // Define a shortcut key combination for the menu item.
      menuItem3->Shortcut = Shortcut::CtrlS;
      // Set the caption of the second sub menu item of menuItem2.
      menuItem4->Text = "Large";
      // Define a shortcut key combination for the menu item.
      menuItem4->Shortcut = Shortcut::CtrlL;
      // Set the index of the menu item so it is placed below the first submenu item.
      menuItem4->Index = 1;
      // Add menuItem3 and menuItem4 to menuItem2's list of menu items.
      menuItem2->MenuItems->Add( menuItem3 );
      menuItem2->MenuItems->Add( menuItem4 );
      // Add menuItem2 to menuItem1's list of menu items.
      menuItem1->MenuItems->Add( menuItem2 );
      // Add menuItem1 to the MainMenu for displaying.
      mainMenu1->MenuItems->Add( menuItem1 );
   }
public void CreateMyMenu()
    {
    // Set the caption for the top-level menu item.
    menuItem1.Text = "Edit";
    // Set the caption for the first submenu.
    menuItem2.Text = "Font Size";
    // Set the caption for menuItem2's first submenu.
    menuItem3.Text = "Small";
    // Set the checked property to true since this is the default value.
    menuItem3.Checked = true;
    // Define a shortcut key combination for the menu item.
    menuItem3.Shortcut = Shortcut.CtrlS;
    // Set the caption of the second sub menu item of menuItem2.
    menuItem4.Text = "Large";
    // Define a shortcut key combination for the menu item.
    menuItem4.Shortcut = Shortcut.CtrlL;
    // Set the index of the menu item so it is placed below the first submenu item.
    menuItem4.Index = 1;
    // Add menuItem3 and menuItem4 to menuItem2's list of menu items.
    menuItem2.MenuItems.Add(menuItem3);
    menuItem2.MenuItems.Add(menuItem4);
    // Add menuItem2 to menuItem1's list of menu items.
    menuItem1.MenuItems.Add(menuItem2);
    // Add menuItem1 to the MainMenu for displaying.
    mainMenu1.MenuItems.Add(menuItem1);
    }
Public Sub CreateMyMenu()
    ' Set the caption for the top-level menu item.
    menuItem1.Text = "Edit"
    ' Set the caption for the first submenu.
    menuItem2.Text = "Font Size"
    ' Set the caption for menuItem2's first submenu.
    menuItem3.Text = "Small"
    ' Set the checked property to true since this is the default value.
    menuItem3.Checked = True
    ' Define a shortcut key combination for the menu item.
    menuItem3.Shortcut = Shortcut.CtrlS
    ' Set the caption of the second sub menu item of menuItem2.
    menuItem4.Text = "Large"
    ' Define a shortcut key combination for the menu item.
    menuItem4.Shortcut = Shortcut.CtrlL
    ' Set the index of the menu item so it is placed below the first submenu item.
    menuItem4.Index = 1
    ' Add menuItem3 and menuItem4 to menuItem2's list of menu items.
    menuItem2.MenuItems.Add(menuItem3)
    menuItem2.MenuItems.Add(menuItem4)
    ' Add menuItem2 to menuItem1's list of menu items.
    menuItem1.MenuItems.Add(menuItem2)
    ' Add menuItem1 to the MainMenu for displaying.
    mainMenu1.MenuItems.Add(menuItem1)
End Sub

備註

此類別在 .NET Core 3.1 和更新版本中無法使用。 請改用 ToolStripDropDownToolStripDropDownMenu

這個類別是 、 MenuItemContextMenu 類別的 MainMenu 基類。 您無法建立這個類別的實例。 應用程式的功能表是由 物件所組成 MenuItem 。 這些可以包含其他 MenuItem 物件,代表子功能表專案。 物件 MenuItem 可以儲存在 中 MainMenu ,以顯示為表單的整個功能表結構,或是 ContextMenu 用來顯示快顯功能表的 。 這個類別提供所有功能表類別通用的功能。

不同于許多基類,類別 Menu 會使用其衍生類別來定義其許多屬性。 如果您在多文檔介面中使用功能表, (MDI) 應用程式,您可以使用 MdiListItem 屬性來指定 , MenuItem 以顯示應用程式中開啟的 MDI 子表單清單。 屬性 MenuItems 包含儲存在功能表類別中的物件清單 MenuItemMainMenu針對 或 ContextMenu ,這個屬性包含顯示的所有 MenuItem 物件。 MenuItem針對 , MenuItems 屬性代表與其相關聯的子功能表專案。

除了提供給所有衍生功能表類別的屬性之外,類別 Menu 也提供 方法,例如 CloneMenuMergeMenu ,可讓您從現有的功能表建立新的功能表,同時合併兩個功能表結構。

類別 Menu 也會定義巢狀類別 Menu.MenuItemCollection 。 這個類別會定義 屬性所使用的 MenuItems 物件集合 MenuItem 。 您可以使用 類別的方法 Menu.MenuItemCollection ,從 MainMenuContextMenuMenuItem 加入和移除功能表項目。

建構函式

Menu(MenuItem[])

初始化 Menu 類別的新執行個體。

欄位

FindHandle

指定 FindMenuItem(Int32, IntPtr) 方法應該搜尋控制代碼。

FindShortcut

指定 FindMenuItem(Int32, IntPtr) 方法應該搜尋捷徑。

屬性

CanRaiseEvents

取得值,指出元件是否能引發事件。

(繼承來源 Component)
Container

取得包含 IContainerComponent

(繼承來源 Component)
DesignMode

取得值,指出 Component 目前是否處於設計模式。

(繼承來源 Component)
Events

取得附加在這個 Component 上的事件處理常式清單。

(繼承來源 Component)
Handle

取得值,表示功能表的視窗控制代碼 (Window Handle)。

IsParent

取得值,指出這個功能表是否包含任何功能表項目。 這個屬性是唯讀的。

MdiListItem

取得值,指出用來顯示多重文件介面 (MDI) 子表單清單的 MenuItem

MenuItems

取得值,指出與功能表相關的 MenuItem 物件集合。

Name

取得或設定 Menu 的名稱。

Site

取得或設定 ComponentISite

(繼承來源 Component)
Tag

取得或設定與控制項相關的使用者定義資料。

方法

CloneMenu(Menu)

將以參數傳遞的 Menu 複製到目前的 Menu

CreateMenuHandle()

建立 Menu 的新控制代碼。

CreateObjRef(Type)

建立包含所有相關資訊的物件,這些資訊是產生用來與遠端物件通訊的所需 Proxy。

(繼承來源 MarshalByRefObject)
Dispose()

釋放 Component 所使用的所有資源。

(繼承來源 Component)
Dispose(Boolean)

處置 Menu 所使用的資源 (除了記憶體之外)。

Equals(Object)

判斷指定的物件是否等於目前的物件。

(繼承來源 Object)
FindMenuItem(Int32, IntPtr)

取得包含指定值的 MenuItem

FindMergePosition(Int32)

傳回功能表項目應該插入功能表上的位置。

GetContextMenu()

取得含有這個功能表的 ContextMenu

GetHashCode()

做為預設雜湊函式。

(繼承來源 Object)
GetLifetimeService()
已過時。

擷取控制這個執行個體存留期 (Lifetime) 原則的目前存留期服務物件。

(繼承來源 MarshalByRefObject)
GetMainMenu()

取得含有這個功能表的 MainMenu

GetService(Type)

傳回表示 Component 或其 Container 所提供之服務的物件。

(繼承來源 Component)
GetType()

取得目前執行個體的 Type

(繼承來源 Object)
InitializeLifetimeService()
已過時。

取得存留期服務物件,以控制這個執行個體的存留期原則。

(繼承來源 MarshalByRefObject)
MemberwiseClone()

建立目前 Object 的淺層複製。

(繼承來源 Object)
MemberwiseClone(Boolean)

建立目前 MarshalByRefObject 物件的淺層複本。

(繼承來源 MarshalByRefObject)
MergeMenu(Menu)

將一個功能表的 MenuItem 物件和目前的功能表合併。

ProcessCmdKey(Message, Keys)

處理命令按鍵。

ToString()

傳回表示 String 控制項的 Menu

事件

Disposed

Dispose() 方法的呼叫處置元件時,就會發生。

(繼承來源 Component)

適用於

另請參閱