Sdílet prostřednictvím


IOleComponentUIManager.ShowContextMenu – metoda (UInt32, Guid, Int32, POINTS , IOleCommandTarget)

 

Požadavky zobrazení kontextové nabídky.

Obor názvů:   Microsoft.VisualStudio.Shell.Interop
Sestavení:  Microsoft.VisualStudio.Shell.Interop (v Microsoft.VisualStudio.Shell.Interop.dll)

Syntaxe

int ShowContextMenu(
    uint dwCompRole,
    [InAttribute] ref Guid rclsidActive,
    int nMenuId,
    POINTS[] pos,
    IOleCommandTarget pCmdTrgtActive
)
int ShowContextMenu(
    unsigned int dwCompRole,
    [InAttribute] Guid% rclsidActive,
    int nMenuId,
    array<POINTS>^ pos,
    IOleCommandTarget^ pCmdTrgtActive
)
abstract ShowContextMenu : 
        dwCompRole:uint32 *
        rclsidActive:Guid byref *
        nMenuId:int *
        pos:POINTS[] *
        pCmdTrgtActive:IOleCommandTarget -> int
Function ShowContextMenu (
    dwCompRole As UInteger,
    <InAttribute> ByRef rclsidActive As Guid,
    nMenuId As Integer,
    pos As POINTS(),
    pCmdTrgtActive As IOleCommandTarget
) As Integer

Parametry

  • dwCompRole
    [v] Role VSPackage objekt v místě požadující kontextové nabídky.Pro platné dwCompRole hodnoty, viz OLEROLE.
  • rclsidActive
    [v] Identifikátor (třídy CLSID) přímo v objektu VSPackage kontextové nabídky požadující třídy.
  • nMenuId
    [v] Místní nabídka zobrazení identifikuje.
  • pos
    [v] Identifikuje umístění kontextové nabídky obrazovky.
  • pCmdTrgtActive
    [v] Odkazuje IOleCommandTarget rozhraní pro odesílání příkazů aktivní objekt při zobrazení kontextové nabídky.

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 oleipc.idl:

HRESULT IOleComponentUIManager::ShowContextMenu(
   [in] DWORD dwCompRole,
   [in] REFCLSID rclsidActive,
   [in] LONG nMenuId,
   [in] REFPOINTS pos,
   [in] IOleCommandTarget *pCmdTrgtActive
);

ShowContextMenulze pomocí nástroje nejvyšší úrovně a objekty v místě VSPackage.Objekty VSPackage v místě musí být nejvnitřnější aktivní objekt uživatelského rozhraní nebo hlavní nebo dílčí v řetězci nadřazeného objektu UI aktivní.

Pokud již není viditelný, v místní nabídce SOleComponentUIManager služba vrátí k odesílání příkazů aktivní objekt pomocí IOleCommandTarget rozhraní vnitřní většinu aktivní objekt.Toto je objekt, který byl předán poslední volání IOleCommandTarget.

Protože IOleCommandTarget rozhraní odkazuje pCmdTrgtActive je použít namísto rozhraní zobrazí místní nabídka právě aktivní uživatelské rozhraní objektu, je možné zobrazit v kontextové nabídce přitom od vnořené ovládací prvek fokus.Před zobrazením požadované nabídky, pokud požadavek přichází z objektu jako dílčí součást místní nebo ovládacím prvku součásti SOleComponentUIManager služba poskytuje hlavní součást místní přepsat nebo sloučit nabídky kontejneru s nabídkou aktivní objekt.

Vyvolání příkazu, kterou uživatel vybere v kontextové nabídce dojde před volání ShowContextMenu vrátí.

Pokud VSPackage objekt jako součást řízení chce hlavní součást zobrazte nabídku kontextu obecného řízení, řízení volání komponent IOleCommandTarget, dodávající své vlastní identifikátor GUID a identifikátor nabídky COMP_CONTEXTID_CTRLGENERIC.SOleComponentUIManager Služba předá tyto identifikátory k hlavní součást při volá objektu GetCntrContextMenu.Hlavní součást by měl rozpoznat identifikátor této nabídky a reagovat potlačení nabídky součásti ovládacího prvku a jeho nahrazení hlavní součást Obecný ovládací nabídky.

Viz také

IOleComponentUIManager – rozhraní
Microsoft.VisualStudio.Shell.Interop – obor názvů

Zpátky na začátek