IVsHierarchy 接口

为实现项目层次结构的 Vspackage 提供层次结构管理。

命名空间:  Microsoft.VisualStudio.Shell.Interop
程序集:  Microsoft.VisualStudio.Shell.Interop(在 Microsoft.VisualStudio.Shell.Interop.dll 中)

语法

声明
<InterfaceTypeAttribute()> _
<GuidAttribute("59B2D1D0-5DB0-4F9F-9609-13F0168516D6")> _
Public Interface IVsHierarchy
[InterfaceTypeAttribute()]
[GuidAttribute("59B2D1D0-5DB0-4F9F-9609-13F0168516D6")]
public interface IVsHierarchy

IVsHierarchy 类型公开以下成员。

方法

  名称 说明
公共方法 AdviseHierarchyEvents 建立层次结构事件的客户端请注意,不包含实现 IConnectionPointContainer的该层次结构。
公共方法 Close 关闭并清理一个层次结构,在该环境确定不再使用它。
公共方法 GetCanonicalName 返回唯一,字符串名称在层次结构中的项。用于工作区持久性,例如确保窗口位置。
公共方法 GetGuidProperty 获取值为 GUID 的属性。
公共方法 GetNestedHierarchy 可以为特定层次结构中的节点是快捷到另一个层次结构中间。
公共方法 GetProperty 获取特定节点的属性或该层次结构。
公共方法 GetSite 获取访问服务的服务提供程序。
公共方法 ParseCanonicalName 返回层次结构项的标识符,为其指定名称。
公共方法 QueryClose 确定给定层次结构是否可以关闭的。
公共方法 SetGuidProperty 设置值为 GUID 的属性。
公共方法 SetProperty 设置特定节点的属性或该层次结构。
公共方法 SetSite 设置访问服务的服务提供程序。
公共方法 UnadviseHierarchyEvents 禁用层次结构事件的客户端通知,而无需层次结构实现 IConnectionPointContainer
公共方法 Unused0 添加新方法,无需重新编译或中断二进制兼容性。
公共方法 Unused1 添加新方法,无需重新编译或中断二进制兼容性。
公共方法 Unused2 添加新方法,无需重新编译或中断二进制兼容性。
公共方法 Unused3 添加新方法,无需重新编译或中断二进制兼容性。
公共方法 Unused4 添加新方法,无需重新编译或中断二进制兼容性。

页首

扩展方法

  名称 说明
公共扩展方法 IsCapabilityMatch (由 PackageUtilities 定义。)

页首

备注

IVsHierarchy 接口是泛型接口为节点层次结构。每个节点,包括根节点,可以具有任意属性与它。使用 cookie (VSITEMID),在层次结构对象的每个节点中标识,指示特定节点。此 cookie 是不可见的。 IVsHierarchy的使用者,并且通常是指向层次结构中实现维护的某些私有数据。

VSITEMID 是唯一地标识在层次结构中的 DWORD 一个节点。从一 IVsHierarchy 的 Itemids 不能传递到另一个层次结构。同时,请注意 itemids 具有有限的生存期,这由该层次结构激发的事件,因此,保持长时间的 itemids 需要接收这些事件或 itemid 的转换到一个规范,持久窗体中。

使用 GetNestedHierarchy,在层次结构中的项可以是叶节点、一个容器其他项目或链接到某个其他层次结构。

IVsHierarchy 接口不能为项目层次结构使用。例如, 服务器资源管理器 窗口实现 IVsHierarchy 接口公开其层次结构,而不是项目层次结构。

有时,当对各种虚拟节点查询层次结构,如该层次结构中很有用或在层次结构中的所选节点。如果此虚拟节点可能是相关,其中一个预定义的 VSITEMID 值可以通过。

环境查看一个项目,因为层次结构,也就是说,节点是项目项的节点树。每个节点还具有实现项目层次结构中设置关联的属性,并为 Vspackage 提供层次结构管理。

对实现者的说明

实现创建它们的项目层次结构中的 Vspackage。

对调用者的说明

调用通过环境 get 和 set 层次结构属性。

请参见

参考

Microsoft.VisualStudio.Shell.Interop 命名空间