Всплывающее меню для любого элемента управления? - PullRequest
1 голос
/ 08 февраля 2010

У меня есть пара мест, где меню было бы лучшим выбором, чем отображение диалогового окна, и задавал пользователю вопрос. Проблема в том, что я не знаю, как это сделать.

Вот сценарий:

Текущая ситуация: У меня есть окно с изображением, которое работает как кнопка. Пользователь нажимает на поле, и появляется диалоговое окно с просьбой выбрать категорию Пользователь выбирает категорию и продолжает делать то, что хочет

Желаемая ситуация У меня есть окно с изображением, которое работает как кнопка. Пользователь нажимает на поле и выдвигается меню, где его курсор перечисляет категории пользователь выбирает категорию и продолжает делать то, что хочет ИЛИ пользователь нажимает куда-то еще, и меню исчезает

Как это можно сделать? Есть ли встроенный способ сделать это?

1 Ответ

3 голосов
/ 08 февраля 2010

A ContextMenuStrip, вероятно, то, что вы хотите: http://msdn.microsoft.com/en-us/library/system.windows.forms.contextmenustrip.aspx

ContextMenuStrip заменяет ContextMenu. Вы можете связать ContextMenuStrip с любым элементом управления, и щелчок правой кнопкой мыши автоматически отобразит контекстное меню. Вы можете показать ContextMenuStrip программно, используя метод Show . ContextMenuStrip поддерживает отменяемые события открытия и закрытия для обработки сценариев с динамическим заполнением и несколькими щелчками. ContextMenuStrip поддерживает изображения, состояние проверки элементов меню, текст, клавиши доступа, ярлыки и каскадные меню.

Редактировать: Выделена часть документации, в которой говорится об использовании методов Show() для программного управления отображением ContextMenuStrip.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...