Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Contains the information necessary to define an item in an IVsUIHierarchyWindow.
This API is not CLS-compliant.
Namespace: Microsoft.VisualStudio.Shell
Assembly: Microsoft.VisualStudio.Shell.Immutable.11.0 (in Microsoft.VisualStudio.Shell.Immutable.11.0.dll)
Syntax
'Declaration
<CLSCompliantAttribute(False)> _
Public Interface IVsHierarchyItemIdentity
[CLSCompliantAttribute(false)]
public interface IVsHierarchyItemIdentity
[CLSCompliantAttribute(false)]
public interface class IVsHierarchyItemIdentity
[<CLSCompliantAttribute(false)>]
type IVsHierarchyItemIdentity = interface end
public interface IVsHierarchyItemIdentity
The IVsHierarchyItemIdentity type exposes the following members.
Properties
Name | Description | |
---|---|---|
![]() |
Hierarchy | Gets the IVsHierarchy representing the outer hierarchy of the item. |
![]() |
IsNestedItem | Gets whether this item is a nested item or not. |
![]() |
IsRoot | Gets whether the item is the root of its IVsHierarchy. |
![]() |
ItemID | Gets the item identifier representing the outer item in the hierarchy. |
![]() |
NestedHierarchy | Gets the nested IVsHierarchy representing the inner hierarchy of the item. |
![]() |
NestedItemID | Gets the item identifier representing the inner item in the NestedHierarchy. |
Top
Remarks
For items that belong to only a single IVsHierarchy, the IsNestedItem property will be false, and both the Hierarchy / ItemID and NestedHierarchy / NestedItemID pairs will be equal. For a nested item, the Hierarchy / ItemID pair represent the “outer” (nearest-to-the-root) pair, and the NestedHierarchy / NestedItemID pair represent the “nested” (child) pair.
A single item in the Solution Explorer (for example, a C# project node) can actually be composed of two different IVsHierarchy implementations with two different item identifiers. As a specific example, the “solution” is an IVsHierarchy representing the “tree” of items in the solution, but the solution’s IVsHierarchy does not know about the content of projects. A specific C# project in the solution is also a separate IVsHierarchy. The node representing the project itself might be node #50 in the IVsHierarchy for the solution, and node VSITEMID_ROOT in the IVsHierarchy for the project. IVsHierarchyItemIdentity and IVsHierarchyItem bind together these two different IVsHierarchy and item identifiers into a single concept.