Различия между .ContextMenu и .ContextMenuStrip - PullRequest
51 голосов
/ 09 декабря 2011

В чем различия между .ContextMenu и .ContextMenuStrip в Windows Forms?

Я уже знаю, что такое ContextMenu, но чем ContextMenuStrip отличается от ContextMenu?

Ответы [ 5 ]

41 голосов
/ 09 декабря 2011

http://www.informit.com/articles/article.aspx?p=606224&seqNum=2

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

Посмотрите на примеры в MSDN:

http://msdn.microsoft.com/en-us/library/system.windows.forms.contextmenustrip.aspx

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

http://msdn.microsoft.com/en-us/library/system.windows.forms.control.contextmenustrip.aspx

Если ContextMenu имееттакже присвоенный элементу управления, ContextMenu имеет приоритет над ContextMenuStrip.

7 голосов
/ 09 декабря 2011

Из документа

ContextMenuStrip заменяет ContextMenu.

3 голосов
/ 09 декабря 2011

Согласно MSDN ContextMenuStrip заменяет класс ContextMenu:

Хотя ContextMenuStrip заменяет и добавляет функциональность ContextMenu контроль предыдущих версий, ContextMenu сохраняется для и обратная совместимость, и будущее использование, если вы выберете.

Источник: MSDN - ContextMenu

Редактировать: почему -1?

2 голосов
/ 09 декабря 2011

contextMenu - msdn и contextMenuStrip - msdn

contextMenu - представляет контекстное меню.Хотя ContextMenuStrip заменяет и добавляет функциональность в элемент управления ContextMenu предыдущих версий, ContextMenu сохраняется и для обратной совместимости, и для будущего использования, если вы выберете.

ContextMenuStrip заменяет и добавляет функциональность в элемент управления ContextMenu предыдущих версий

1 голос
/ 09 декабря 2011

Если вы пылесосите над ContextMenu, вы заметите, что ContextMenuStrip заменяет его, но ContextMenu оставлено для целей совместимости.

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