Создание Windows-приложений на основе Visual C#



Контекстное меню


Контекстное меню, дублирующее некоторые действия основного меню, — не самый быстрый способ работы с программой, но самый привычный для пользователя. Элемент управления TextBox содержит в себе простейшее контекстное меню, дублирующее действия подменю Edit. Для того чтобы убедиться в этом, достаточно нанести этот элемент управления на форму и запустить приложение (рис. 2.8):

Контекстное меню элемента TextBox

Рис. 2.8.  Контекстное меню элемента TextBox

В нашем приложении Notepad C# в качестве текстового элемента мы используем RichTextBox. Добавим элемент управления contextMenu из окна ToolBox на форму blank. Добавляем пункты контекстного меню точно так же, как мы это делали для главного меню (рис. 2.9):

Пункты контекстного меню

Рис. 2.9.  Пункты контекстного меню

Свойство Text и Shortcut пунктов меню оставляем прежними. Если мы установим затем для свойства ShowShortcut значение false, то сочетания клавиш будут работать, но в самом меню отображаться не будут — как на рис. рис. 2.8. Свойство Name будет формироваться следующим образом: для пункта Cut — cmnuCut, для Сopy — cmnuCopy и т.д.

В обработчике пунктов просто вызываем соответствующие методы:

private void cmnuCut_Click(object sender, System.EventArgs e) { Cut(); }

private void cmnuCopy_Click(object sender, System.EventArgs e) { Copy(); }

private void cmnuPaste_Click(object sender, System.EventArgs e) { Paste(); }

private void cmnuDelete_Click(object sender, System.EventArgs e) { Delete(); }

private void cmnuSelectAll_Click(object sender, System.EventArgs e) { SelectAll(); }

Листинг 2.3.

Последнее, что нам осталось сделать, — это определить, где будет появляться контекстное меню. Элемент RichTextBox, так же как и формы frmmain и blank, имеет свойство ContextMenu, где мы и указываем contextMenu1, поскольку нам нужно отображать меню именно в текстовом поле. Запускаем приложение — теперь в любой точке текста доступно меню (рис. 2.10).

Контекстное меню

Рис. 2.10.  Контекстное меню




Содержание  Назад  Вперед