объекты контекста выделения
Visual Studio интегрированная среда разработки (ide) использует глобальный объект контекста выделения, чтобы указать, что должно быть показано в интегрированной среде разработки. Каждое окно " в интегрированной среде разработки может иметь свой собственный объект контекста отправлянный выделения к глобальным контекстом выделения. Интегрированная среда разработки обновляет контекст глобального выделения значениями из окна когда это окно находится в фокусе. Дополнительные сведения см. в разделе отзывы и предложения к пользователю.
Каждый граница окна или сайт в интегрированной среде разработки имеется службы, называемую STrackSelection. Объект, созданный в VSPackage, располагается в границы окна должен вызвать метод QueryService метод для получения указателя на ITrackSelection интерфейс.
Фрейма окна могут содержать части своих данных о контексте выделения из глобального выделения распространять к контексту при их запуске. Эта возможность полезна для окна инструментов, которые могут начинаться с пустым выделением.
Изменение глобальных контекст выделения активировать события, которые могут отслеживать VSPackages. VSPackages может выполнять следующие задачи путем реализации IVsTrackSelectionEx и IVsMonitorSelection интерфейсы:
Обновление текущего активного файл в иерархии.
Отслеживание изменений к определенным типам элементов. Например, если в VSPackage использует специальный Свойства окно, можно отслеживать изменения в активном Свойства окно и перезапустить, то при необходимости.
Следующая последовательность показан типичный курс отслеживания выделения.
Интегрированная среда разработки получает контекст выделения из вновь открытого окна и помещает его в глобальный контекст выделения. Если контекст выделения использует HIERARCHY_DONTPROPAGATE или SELCONTAINER_DONTPROPAGATE, то эти сведения не распространяется на глобальную контексту. Дополнительные сведения см. в разделе отзывы и предложения к пользователю.
События уведомления вещанны к любому VSPackage, запросивший инициализацию их.
VSPackage действует на события оно получает путем выполнения действия, как обновить иерархию, повторная активация средство или других подобных задач.