Sdílet prostřednictvím


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

_LIBCAT_MEMBERTYPE

LC_MEMBERACCESS

_LIBCAT_MEMBERACCESS

LC_CLASSTYPE

_LIBCAT_CLASSTYPE

LC_CLASSACCESS

_LIBCAT_CLASSACCESS

LC_ACTIVEPROJECT

Nepoužité.

LC_LISTTYPE (speciální, viz níže)

LIBCAT_LISTTYPE (definice typedef z _LIB_LISTTYPE)

LC_VISIBILITY

_LIBCAT_VISIBILITY

LC_MODIFIER

_LIBCAT_MODIFIERTYPE

LC_NODETYPE (speciální, viz níže)

_LIBCAT_NODETYPE

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