MenuItem Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Представляет отдельный элемент, отображаемый в меню MainMenu или ContextMenu.
Этот класс недоступен в .NET Core 3.1 и более поздних версиях. Используйте ToolStripMenuItem вместо него , который заменяет MenuItem элемент управления .
public ref class MenuItem : System::Windows::Forms::Menu
public class MenuItem : System.Windows.Forms.Menu
type MenuItem = class
inherit Menu
Public Class MenuItem
Inherits Menu
- Наследование
Примеры
В следующем примере кода создается структура меню для формы. В примере кода добавляется MenuItem для представления пункта меню верхнего уровня, добавляется в него элемент подменю для выбора размера шрифта, а затем к этому элементу меню добавляются два элемента подменю, которые представляют большие и малые варианты шрифтов в приложении. В этом примере требуется объект с MainMenu именем mainMenu1
и четыре MenuItem объекта с именами menuItem1
, menuItem2
, menuItem3
и menuItem4
.
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 и более поздних версиях. Взамен рекомендуется использовать ToolStripMenuItem.
Для MenuItem отображения необходимо добавить его в MainMenu или ContextMenu. Чтобы создать подменю, можно добавить MenuItem объекты в MenuItems свойство родительского MenuItemобъекта .
Класс MenuItem предоставляет свойства, позволяющие настроить внешний вид и функциональность элемента меню. Чтобы отобразить проверка метку рядом с пунктом меню, используйте Checked свойство . Эту функцию можно использовать для идентификации пункта меню, выбранного в списке взаимоисключающих пунктов меню. Например, если у вас есть набор пунктов меню для настройки цвета текста в элементе TextBox управления, можно использовать Checked свойство , чтобы определить, какой цвет выбран в данный момент. Свойство Shortcut можно использовать для определения сочетания клавиатуры, которую можно нажимать для выбора пункта меню.
Для MenuItem объектов, отображаемых в приложении многодокументного интерфейса (MDI), можно использовать MergeMenu метод , чтобы объединить меню родительского элемента MDI с меню его дочерних форм, чтобы создать консолидированную структуру меню. MenuItem Так как нельзя повторно использовать в нескольких расположениях одновременно, например в MainMenu и ContextMenu, можно использовать CloneMenu метод для создания копии для использования в другом расположенииMenuItem.
Событие Popup позволяет выполнять задачи перед отображением меню. Например, можно создать обработчик событий для этого события, чтобы отображать или скрывать пункты меню в зависимости от состояния кода. Событие Select позволяет выполнять такие задачи, как предоставление подробной справки по пунктам меню приложения, когда пользователь навести указатель мыши на элемент меню.
Конструкторы
MenuItem() |
Инициализирует элемент MenuItem без надписи. |
MenuItem(MenuMerge, Int32, Shortcut, String, EventHandler, EventHandler, EventHandler, MenuItem[]) |
Инициализирует новый экземпляр класса MenuItem с заданной надписью. Определяет обработчики событий для событий Click, Select и Popup, сочетание клавиш, тип слияния и порядок, задаваемый для данного элемента меню. |
MenuItem(String) |
Инициализирует новый экземпляр класса MenuItem с заданной надписью для элемента меню. |
MenuItem(String, EventHandler) |
Инициализирует новый экземпляр класса с заданной надписью и обработчиком для события Click данного элемента меню. |
MenuItem(String, EventHandler, Shortcut) |
Инициализирует новый экземпляр класса с заданной подписью, обработчиком событий и сочетанием клавиш для данного элемента меню. |
MenuItem(String, MenuItem[]) |
Инициализирует новый экземпляр класса с заданной подписью и массивом элементов вложенного меню для данного элемента меню. |
Поля
FindHandle |
Указывает, что метод FindMenuItem(Int32, IntPtr) должен выполнять поиск дескриптора. (Унаследовано от Menu) |
FindShortcut |
Указывает, что метод FindMenuItem(Int32, IntPtr) должен выполнять поиск ярлыка. (Унаследовано от Menu) |
Свойства
BarBreak |
Получает или задает значение, показывающее, размещается ли MenuItem в новой строке (для элемента меню, добавленного к объекту MainMenu) или в новом столбце (для элемента вложенного меню или элемента меню, отображаемого в ContextMenu). |
Break |
Получает или задает значение, показывающее, размещается ли элемент на новой строке (для элемента меню, добавленного к объекту MainMenu) или в новом столбце (для элемента меню или элемента вложенного меню, отображаемого в ContextMenu). |
CanRaiseEvents |
Возвращает значение, показывающее, может ли компонент вызывать событие. (Унаследовано от Component) |
Checked |
Возвращает или задает значение, указывающее, будет ли отображаться флажок рядом с текстом элемента меню. |
Container |
Возвращает объект IContainer, который содержит коллекцию Component. (Унаследовано от Component) |
DefaultItem |
Возвращает или задает значение, указывающее, является ли данный элемент меню элементом по умолчанию. |
DesignMode |
Возвращает значение, указывающее, находится ли данный компонент Component в режиме конструктора в настоящее время. (Унаследовано от Component) |
Enabled |
Возвращает или задает значение, указывающее, включен ли элемент меню. |
Events |
Возвращает список обработчиков событий, которые прикреплены к этому объекту Component. (Унаследовано от Component) |
Handle |
Получает значение, представляющее дескриптор окна для меню. (Унаследовано от Menu) |
Index |
Возвращает или задает значение, указывающее положение элемента меню в его родительском меню. |
IsParent |
Возвращает значение, указывающее, содержит ли данный элемент меню дочерние элементы меню. |
MdiList |
Возвращает или задает значение, указывающее, будет ли данный элемент меню заполняться с помощью списка дочерних окон интерфейса MDI, отображаемых в связанной форме. |
MdiListItem |
Получает значение, указывающее объект MenuItem, используемый для отображения списка дочерних форм многодокументного интерфейса (MDI). (Унаследовано от Menu) |
MenuID |
Возвращает значение, указывающее идентификатор Windows для данного элемента меню. |
MenuItems |
Получает значение, показывающее коллекцию объектов MenuItem, связанных с данным меню. (Унаследовано от Menu) |
MergeOrder |
Возвращает или задает значение, указывающее относительное положение данного элемента меню при его слиянии с другим элементом. |
MergeType |
Возвращает или задает значение, указывающее поведение данного элемента меню при слиянии его меню с другим меню. |
Mnemonic |
Возвращает значение, указывающее назначенный символ, связанный с данным элементом меню. |
Name |
Возвращает или задает имя таблицы для объекта Menu. (Унаследовано от Menu) |
OwnerDraw |
Возвращает или задает значение, определяющее, будет элемент меню рисоваться с помощью передаваемого кода или средствами Windows. |
Parent |
Возвращает значение, указывающее меню, содержащее данный элемент меню. |
RadioCheck |
Получает или задает значение, показывающее, будет ли в случае выбора элемента MenuItem выводиться переключатель, а не флажок. |
Shortcut |
Возвращает или задает значение, указывающее сочетание клавиш для данного элемента меню. |
ShowShortcut |
Возвращает или задает значение, указывающее, будет ли сочетание клавиш для данного элемента меню, отображаться рядом с текстом подписи для этого элемента. |
Site |
Получает или задает ISite объекта Component. (Унаследовано от Component) |
Tag |
Получает или задает определяемые пользователем данные, связанные с элементом управления. (Унаследовано от Menu) |
Text |
Возвращает или задает значение, указывающее подпись данного элемента меню. |
Visible |
Возвращает или задает значение, указывающее, будет ли видимым данный элемент меню. |
Методы
CloneMenu() |
Создает копию текущего поставщика MenuItem. |
CloneMenu(Menu) |
Копирует объект Menu, передаваемый в качестве параметра в текущий объект Menu. (Унаследовано от Menu) |
CloneMenu(MenuItem) |
Создает копию заданного объекта MenuItem. |
CreateMenuHandle() |
Создает новый дескриптор для объекта Menu. (Унаследовано от Menu) |
CreateObjRef(Type) |
Создает объект, который содержит всю необходимую информацию для создания прокси-сервера, используемого для взаимодействия с удаленным объектом. (Унаследовано от MarshalByRefObject) |
Dispose() |
Освобождает все ресурсы, занятые модулем Component. (Унаследовано от Component) |
Dispose(Boolean) |
Уничтожает ресурсы (кроме памяти), используемые классом MenuItem. |
Equals(Object) |
Определяет, равен ли указанный объект текущему объекту. (Унаследовано от Object) |
FindMenuItem(Int32, IntPtr) |
Получает объект MenuItem, содержащий указываемое значение. (Унаследовано от Menu) |
FindMergePosition(Int32) |
Возвращает позицию меню, в которую должен быть вставлен элемент меню. (Унаследовано от Menu) |
GetContextMenu() |
Получает объект ContextMenu, содержащий это меню. (Унаследовано от Menu) |
GetHashCode() |
Служит хэш-функцией по умолчанию. (Унаследовано от Object) |
GetLifetimeService() |
Устаревшие..
Извлекает объект обслуживания во время существования, который управляет политикой времени существования данного экземпляра. (Унаследовано от MarshalByRefObject) |
GetMainMenu() |
Получает объект MainMenu, содержащий это меню. (Унаследовано от Menu) |
GetService(Type) |
Возвращает объект, представляющий службу, предоставляемую классом Component или классом Container. (Унаследовано от Component) |
GetType() |
Возвращает объект Type для текущего экземпляра. (Унаследовано от Object) |
InitializeLifetimeService() |
Устаревшие..
Получает объект службы времени существования для управления политикой времени существования для этого экземпляра. (Унаследовано от MarshalByRefObject) |
MemberwiseClone() |
Создает неполную копию текущего объекта Object. (Унаследовано от Object) |
MemberwiseClone(Boolean) |
Создает неполную копию текущего объекта MarshalByRefObject. (Унаследовано от MarshalByRefObject) |
MergeMenu() |
Выполняет слияние этого элемента MenuItem с другим элементом MenuItem и возвращает элемент MenuItem, полученный в результате слияния. |
MergeMenu(Menu) |
Объединяет объекты MenuItem одного меню с текущим меню. (Унаследовано от Menu) |
MergeMenu(MenuItem) |
Выполняет слияние другого элемента меню с данным элементом. |
OnClick(EventArgs) |
Вызывает событие Click. |
OnDrawItem(DrawItemEventArgs) |
Вызывает событие DrawItem. |
OnInitMenuPopup(EventArgs) |
Вызывает событие Popup. |
OnMeasureItem(MeasureItemEventArgs) |
Вызывает событие MeasureItem. |
OnPopup(EventArgs) |
Вызывает событие Popup. |
OnSelect(EventArgs) |
Вызывает событие Select. |
PerformClick() |
Создает событие Click, имитирующее щелчок мышью для элемента MenuItem. |
PerformSelect() |
Вызывает событие Select для данного элемента меню. |
ProcessCmdKey(Message, Keys) |
Обрабатывает клавишу для команд. (Унаследовано от Menu) |
ToString() |
Возвращает строку, представляющую объект MenuItem. |
События
Click |
Происходит, когда элемент меню выбирается щелчком мыши, с помощью сочетания клавиш или клавиши доступа, определенных для данного элемента. |
Disposed |
Возникает при удалении компонента путем вызова метода Dispose(). (Унаследовано от Component) |
DrawItem |
Вызывается, когда свойство OwnerDraw элемента меню устанавливается в значение |
MeasureItem |
Происходит, когда меню требуются сведения о размере элемента меню перед его отрисовкой. |
Popup |
Происходит перед отображением списка элементов меню. |
Select |
Происходит, когда пользователь наводит указатель мыши на элемент меню. |