Metoda IVsHierarchy.GetNestedHierarchy — (UInt32, Guid, IntPtr, UInt32)
Tworzy węzeł w danej hierarchii jako skrót do środka innej hierarchii.
Przestrzeń nazw: Microsoft.VisualStudio.Shell.Interop
Zestaw: Microsoft.VisualStudio.Shell.Interop (w Microsoft.VisualStudio.Shell.Interop.dll)
Składnia
int GetNestedHierarchy(
uint itemid,
[InAttribute] ref Guid iidHierarchyNested,
out IntPtr ppHierarchyNested,
out uint pitemidNested
)
int GetNestedHierarchy(
unsigned int itemid,
[InAttribute] Guid% iidHierarchyNested,
[OutAttribute] IntPtr% ppHierarchyNested,
[OutAttribute] unsigned int% pitemidNested
)
abstract GetNestedHierarchy :
itemid:uint32 *
iidHierarchyNested:Guid byref *
ppHierarchyNested:nativeint byref *
pitemidNested:uint32 byref -> int
Function GetNestedHierarchy (
itemid As UInteger,
<InAttribute> ByRef iidHierarchyNested As Guid,
<OutAttribute> ByRef ppHierarchyNested As IntPtr,
<OutAttribute> ByRef pitemidNested As UInteger
) As Integer
Parametry
itemid
Type: System.UInt32[in] Identyfikator elementu węzła, którego zażądane hierarchia zagnieżdżonych. Aby uzyskać listę itemid wartości, zobacz VSITEMID.
iidHierarchyNested
Type: System.Guid[in] Identyfikator interfejsu w ppHierarchyNested. Aby zaimplementować, najpierw Pobierz obiekt, który reprezentuje hierarchia zagnieżdżonych i uruchom QueryInterface na niej w celu uzyskania interfejsu identyfikator (IID). Następnie należy przekazać IID przy użyciu iidHierarchyNested. Wynik QueryInterface przechodzi w tryb wywołania ppHierarchyNested.
ppHierarchyNested
Type: System.IntPtr[out, iid_is(iidHierarchyNested)] Wskaźnik do interfejsu, którego identyfikator został przekazany w iidHierarchyNested.
pitemidNested
Type: System.UInt32[out] Wskaźnik do identyfikatora elementu węzła głównego hierarchii zagnieżdżonych. Aby uzyskać listę pitemidnested wartości, zobacz VSITEMID. Interfejs jest skonfigurowany do obsługi shortcutting do dowolnego węzła w innej hierarchii, środowisko aktualnie obsługuje tylko shortcutting do węzła głównego hierarchii zagnieżdżone, w którym to przypadku pitemidNested musi być równa VSITEMID_ROOT.
Wartość zwracana
Type: System.Int32
Jeśli itemid nie jest hierarchia zagnieżdżonych, Metoda ta zwraca E_FAIL. Jeśli żądany interfejs nie jest obsługiwany w obiekcie hierarchii E_NOINTERFACE jest zwracana. Obiekt wywołujący może następnie traktować ten węzeł tak, jakby był bez żadnych elementów podrzędnych, jeśli żądany interfejs był essential (jak często w przypadku gdy żądany interfejs jest IID_IVsUIHierarchy).
Uwagi
Hierarchie mogą być zagnieżdżane w innych hierarchii. Na przykład można utworzyć hierarchię nadrzędny o nazwie 1 hierarchii. Jeśli hierarchia 1 zawiera dwa elementy, element A i B elementu hierarchia zagnieżdżonych z elementu B są zagnieżdżone hierarchii (o nazwie hierarchii 2) ma dwa identyfikatory:
Element B w hierarchii 1
Główny hierarchii 2
Użyj IVsHierarchy::GetNestedHierarchy metodę, aby określić, czy danej hierarchii jest hierarchia zagnieżdżonych. W powyższym przykładzie, należy określić itemid odpowiadający B elementu w hierarchii 1, a metoda zwróci głównego hierarchii 2. Ta metoda umożliwia mieć dwa różne hierarchie implementacji powodów, nawet jeśli użytkownikowi hierarchia zagnieżdżonych wygląda podrzędnych hierarchii nadrzędny.
Jeśli wartość zwracana jest E_NOINTERFACE i żądany interfejs jest niezbędne, jak często w przypadku gdy żądany interfejs jest IID_IVsUIHierarchy, obiekt wywołujący traktuje ten węzeł tak, jakby nie ma podrzędnych węzłów i nie jest hierarchią zagnieżdżonych.
Z zagnieżdżonych hierarchiami hierarchię nadrzędną można zastąpić zachowanie jego zagnieżdżonej hierarchii. W związku z tym Jeśli polecenie wykonane w elemencie hierarchia zagnieżdżonych hierarchii nadrzędny może pierwszej szansy w odpowiedzi na polecenie.
Podpis COM
Z vsshell.idl:
HRESULT IVsHierarchy::GetNestedHierarchy(
[in] VSITEMID itemid,
[in] REFIID iidHierarchyNested,
[out, iid_is(iidHierarchyNested)] void **ppHierarchyNested,
[out] VSITEMID *pitemidNested
);
Zobacz też
Interfejs IVsHierarchy
Przestrzeń nazw Microsoft.VisualStudio.Shell.Interop
Powrót do początku