IVsObjectList.GetCategoryField – metoda (UInt32, LIB_CATEGORY, UInt32)
Vrátí hodnotu pro zadané kategorie pro danou položku.
Obor názvů: Microsoft.VisualStudio.Shell.Interop
Sestavení: Microsoft.VisualStudio.Shell.Interop (v Microsoft.VisualStudio.Shell.Interop.dll)
Syntaxe
int GetCategoryField(
uint index,
LIB_CATEGORY Category,
out uint pField
)
int GetCategoryField(
unsigned int index,
LIB_CATEGORY Category,
[OutAttribute] unsigned int% pField
)
abstract GetCategoryField :
index:uint32 *
Category:LIB_CATEGORY *
pField:uint32 byref -> int
Function GetCategoryField (
index As UInteger,
Category As LIB_CATEGORY,
<OutAttribute> ByRef pField As UInteger
) As Integer
Parametry
- index
[v] Určuje index položky seznamu zájmu.
- Category
[v] Určuje kategorii zájem.Hodnoty jsou převzaty z LIB_CATEGORY výčtu.
- pField
[výstup] Ukazatel hospodářství vrácená hodnota proměnné.
Vrácená hodnota
Type: System.Int32
Pokud metoda uspěje, vrací S_OK.Pokud se nezdaří, vrátí kód chyby.
Poznámky
Podpis COM
Z vsshell.idl:
HRESULT IVsObjectList::GetCategoryField(
[in] ULONG Index,
[in] LIB_CATEGORY Category,
[out,retval] DWORD* pField
);
Životní prostředí objekt Správce volání tato metoda načítání dat kategorie pro položky seznamu.Musí vracet v pField hodnotu čítače výčtu z výčtů LIB_ * odpovídající kategorie zadané v parametru Category parametr.Kategorie a jejich výčty přidruženého pole jsou uvedeny v následující tabulce.
Kategorie z LIB_CATEGORY |
LIBCAT_ enum |
---|---|
LC_MEMBERTYPE |
|
LC_MEMBERACCESS |
|
LC_CLASSTYPE |
|
LC_CLASSACCESS |
|
LC_ACTIVEPROJECT |
Nepoužité. |
LC_LISTTYPE (speciální, viz níže) |
LIBCAT_LISTTYPE (definice typedef z _LIB_LISTTYPE) |
LC_VISIBILITY |
|
LC_MODIFIER |
|
LC_NODETYPE (speciální, viz níže) |
Pokud index NULINDEX, je parametr Category bude LC_LISTTYPE a požadavek je jako celek, není zvláštní položka seznamu.Je s dotazem u podřízených typů seznam podporovaných podle tohoto seznamu.V tomto případě by přiřadit pField jeden nebo více hodnot z _LIB_LISTTYPE výčtu.Například LLT_CLASSES seznam může vrátit.LLT_CLASSES | LLT_MEMBERSoznačení podporuje třídy a členských seznamů.To, však neznamená, že každé položky seznamu v tomto seznamu podporuje oba podřízených seznamů.
Volání GetCategoryField metodou s LC_LISTTYPE kategorie je jedním ze způsobů prostředí určuje, zda uzel je rozšiřitelná, tak můžete vyznačit, že by měl být zobrazen symbol "+" nástroje pro zobrazení prohlížeče nebo třídy objektu.Protože computing rozšiřitelnost uzel může být nákladné knihovny, bude nejprve volat prostředí GetExpandable.Pokud tento způsob nezdaří, bude volání prostředí GetCategoryField.Použití GetExpandable2 určíte rozbalitelné stavu položky seznamu mnohem rychlejší než plně výčet podporovaných seznamů v rámci dané položky.
Neimplementuje LC_NODETYPE pro non-LLT_HIERARCHY seznam.Můžete vrátit LCNT_SYMBOL pro LLT_HIERARCHY seznamy, které jsou však ve skutečnosti symbol seznamy.
Viz také
IVsObjectList – rozhraní
Microsoft.VisualStudio.Shell.Interop – obor názvů
Zpátky na začátek