Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Контекст Visual Studio определяет доступные команды. Контекст может изменяться в зависимости от текущего проекта, текущего редактора, загруженных VSPackage и других аспектов интегрированной среды разработки (IDE).
Контексты команд
Наиболее распространенными являются следующие контексты команд:
Интегрированная среда разработки: команды, предоставляемые интегрированной среду разработки, всегда доступны.
VSPackage: VSPackages может определить, когда команды должны отображаться или скрыты.
Проект: команды project отображаются только для выбранного проекта.
Редактор: одновременно может быть активен только один редактор. Доступны команды активного редактора. Редактор тесно работает с языковой службой. Языковая служба должна обрабатывать свои команды в контексте связанного редактора.
Тип файла: редактор может загружать несколько типов файлов. Доступные команды могут изменяться в зависимости от типа файла.
Активное окно: последнее активное окно документа задает контекст пользовательского интерфейса для ключевых привязок. Однако окно инструментов с таблицей привязки ключей, похожей на внутренний веб-браузер, также может задать контекст пользовательского интерфейса. Для окон документов с несколькими вкладками, таких как редактор HTML, каждая вкладка имеет уникальный GUID контекста команды. После регистрации окна инструмента оно всегда доступно в меню "Вид ".
Контекст пользовательского интерфейса: контексты пользовательского VSConstants.UICONTEXT интерфейса определяются значениями класса, например SolutionBuilding_guid при создании решения или Debugging_guid при активном отладчике. Одновременно несколько контекстов пользовательского интерфейса могут быть активными.
Задайте пользовательские идентификаторы GUID контекста
Если соответствующий GUID контекста команды еще не определен, вы можете определить его в VSPackage, а затем запрограммировать его, чтобы быть активным или неактивным, как это необходимо для управления видимостью команд:
Зарегистрируйте GUID идентификаторы контекста, вызвав метод GetCmdUIContextCookie.
Чтобы получить состояние GUID контекста, вызовите метод IsCmdUIContextActive.
Включение и отключение идентификаторов GUID контекста осуществляется вызовом метода SetCmdUIContext.
Caution
Убедитесь, что ваш VSPackage не влияет на существующие идентификаторы GUID контекста, так как другие VSPackage могут зависеть от них.