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 层次结构属性。