MenuItem Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Внимание
Menu is provided for binary compatibility with .NET Framework and is not intended to be used directly from your code. Use ToolStripDropDown and ToolStripDropDownMenu instead.
Представляет отдельный элемент, отображаемый в пределах MainMenu или ContextMenu.
Этот класс недоступен в .NET Core 3.1 и более поздних версиях. Вместо этого используйте ToolStripMenuItem элемент управления, который заменяет MenuItem элемент управления.
public ref class MenuItem : System::Windows::Forms::Menu
public class MenuItem : System.Windows.Forms.Menu
[System.ComponentModel.Browsable(false)]
[System.Obsolete("`Menu` is provided for binary compatibility with .NET Framework and is not intended to be used directly from your code. Use `ToolStripDropDown` and `ToolStripDropDownMenu` instead.", false, DiagnosticId="WFDEV006", UrlFormat="https://aka.ms/winforms-warnings/{0}")]
public class MenuItem : System.Windows.Forms.Menu
type MenuItem = class
inherit Menu
[<System.ComponentModel.Browsable(false)>]
[<System.Obsolete("`Menu` is provided for binary compatibility with .NET Framework and is not intended to be used directly from your code. Use `ToolStripDropDown` and `ToolStripDropDownMenu` instead.", false, DiagnosticId="WFDEV006", UrlFormat="https://aka.ms/winforms-warnings/{0}")>]
type MenuItem = class
inherit Menu
Public Class MenuItem
Inherits Menu
- Наследование
- Атрибуты
Примеры
В следующем примере кода создается структура меню для формы. Пример кода добавляет MenuItem элемент меню верхнего уровня, добавляет в него элемент подменю для выбора размера шрифта, а затем добавляет два подменю в этот пункт меню, представляющий большой и небольшой вариант шрифта в приложении. В примере требуется, чтобы был объект с именем и четырьмя объектами MainMenu с именем mainMenu1menuItem1, и menuItem4menuItem2menuItem3.MenuItem
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 отобразиться, необходимо добавить его в или MainMenuContextMenu. Чтобы создать подменю, можно добавить MenuItem объекты в MenuItems свойство родительского MenuItemэлемента.
Класс MenuItem предоставляет свойства, позволяющие настроить внешний вид и функциональные возможности элемента меню. Чтобы отобразить флажок рядом с элементом меню, используйте Checked свойство. Эту функцию можно использовать для идентификации элемента меню, выбранного в списке взаимоисключающих элементов меню. Например, если у вас есть набор элементов меню для задания цвета текста в элементе TextBox управления, можно использовать Checked свойство для определения выбранного цвета в данный момент. Свойство Shortcut можно использовать для определения сочетания клавиатуры, которую можно нажать, чтобы выбрать элемент меню.
Для MenuItem объектов, отображаемых в приложении MDI, можно использовать MergeMenu метод для объединения меню родительского элемента MDI с дочерними формами для создания консолидированной структуры меню. MenuItem Так как невозможно повторно использовать в нескольких расположениях одновременно, например в a MainMenu и aContextMenu, можно использовать CloneMenu метод для создания копии MenuItem для использования в другом расположении.
Событие Popup позволяет выполнять задачи перед отображением меню. Например, можно создать обработчик событий для этого события для отображения или скрытия элементов меню на основе состояния кода. Это Select событие позволяет выполнять такие задачи, как предоставление подробной справки для элементов меню приложения, когда пользователь помещает указатель мыши на пункт меню.
Конструкторы
| Имя | Описание |
|---|---|
| MenuItem() |
Устаревшие..
Инициализирует пустой MenuItem заголовок. |
| MenuItem(MenuMerge, Int32, Shortcut, String, EventHandler, EventHandler, EventHandler, MenuItem[]) |
Устаревшие..
Инициализирует новый экземпляр MenuItem класса с указанным заголовком; определенные обработчики событий для Clickсобытий Select , Popup сочетания клавиш, тип слияния и порядок, указанный для элемента меню. |
| MenuItem(String, EventHandler, Shortcut) |
Устаревшие..
Инициализирует новый экземпляр класса с указанным заголовком, обработчиком событий и связанным сочетанием клавиш для элемента меню. |
| MenuItem(String, EventHandler) |
Устаревшие..
Инициализирует новый экземпляр класса с указанным заголовком и обработчиком событий для Click события элемента меню. |
| MenuItem(String, MenuItem[]) |
Устаревшие..
Инициализирует новый экземпляр класса с указанным заголовком и массивом элементов подменю, определенных для элемента меню. |
| 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 |
Устаревшие..
Возвращает значение, указывающее символ 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 |
Устаревшие..
Происходит, когда пользователь помещает указатель на элемент меню. |