选择上下文对象
Visual Studio 集成 (IDE)开发环境 (ide) 使用全局选择上下文对象确定在 IDE 中显示任何内容。 在 IDE 中每个窗口都可以具有其推入自己的选择上下文对象对全局选择上下文。 ,当该窗口具有焦点时, IDE 会更新其值为全局选择上下文从窗口。 有关更多信息,请参见 对用户的反馈。
每个窗架或站点 IDE 中有一个名为 STrackSelection中的服务。 在窗架站点的 VSPackage 创建的对象必须调用 QueryService 方法获取指向 ITrackSelection 接口。
,在开始时,框架窗口可以保留其从传播的选择上下文信息的部分复制到全局选择上下文。 此功能为可能需要从一个空选择启动的工具窗口非常有用。
修改全局选择上下文触发 Vspackage 可以监视的事件。 Vspackage 可以通过实现 IVsTrackSelectionEx 和 IVsMonitorSelection 接口执行以下任务:
更新层次结构中的当前活动的文件。
监控对元素的某些类型的更改。 例如,因此,如果 VSPackage 使用特定 属性 窗口,您可以监视在活动 属性 窗口并重新启动 thes 的变化,当要求。
以下顺序显示典型的 course 选择跟踪。
IDE 从新打开的窗口中检索选择上下文并在全局选择上下文将其放在 如果选择使用上下文 HIERARCHY_DONTPROPAGATE 或 SELCONTAINER_DONTPROPAGATE,该信息不会传播到全局上下文。 有关更多信息,请参见 对用户的反馈。
通知事件广播给请求其所有 VSPackage。
VSPackage 在它通过实现事件接收如更新层次结构的事件操作,将重新激活工具,或其他类似的任务。