Metoda IOleComponentUIManager.ShowContextMenu — (UInt32, Guid, Int32, POINTS , IOleCommandTarget)
Żądania wyświetlanie menu kontekstowego.
Przestrzeń nazw: Microsoft.VisualStudio.Shell.Interop
Zestaw: Microsoft.VisualStudio.Shell.Interop (w Microsoft.VisualStudio.Shell.Interop.dll)
Składnia
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
Type: System.UInt32[in] Rola obiektu VSPackage w miejscu żądanie menu kontekstowego. Aby uzyskać prawidłową dwCompRole wartości, zobacz OLEROLE.
rclsidActive
Type: System.Guid[in] Klasy identyfikator (CLSID) w miejscu obiektu VSPackage żądanie menu kontekstowego.
nMenuId
Type: System.Int32[in] Identyfikuje menu kontekstowego, które mają być wyświetlane.
pos
Type: Microsoft.VisualStudio.Shell.Interop.POINTS[][in] Określa położenie ekranu menu kontekstowego.
pCmdTrgtActive
Type: Microsoft.VisualStudio.OLE.Interop.IOleCommandTarget[in] Wskazuje IOleCommandTarget interfejs do obsługi wysyłania poleceń aktywnego obiektu podczas wyświetlania menu kontekstowego.
Wartość zwracana
Type: System.Int32
Jeśli metoda zakończy się pomyślnie, zwraca S_OK. Jeśli nie, zwraca kod błędu.
Uwagi
Podpis COM
Z oleipc.idl:
HRESULT IOleComponentUIManager::ShowContextMenu(
[in] DWORD dwCompRole,
[in] REFCLSID rclsidActive,
[in] LONG nMenuId,
[in] REFPOINTS pos,
[in] IOleCommandTarget *pCmdTrgtActive
);
ShowContextMenu można wykorzystywać obiekty narzędzie najwyższego poziomu i VSPackage w miejscu. W miejscu VSPackage obiekty muszą zostać najbardziej aktywnego obiektu interfejsu użytkownika lub głównym lub podskładnika w łańcuchu nadrzędnej aktywnego obiektu interfejsu użytkownika.
Gdy menu kontekstowego nie jest widoczny, SOleComponentUIManager Usługa zwraca do wysyłania poleceń aktywnego obiektu przy użyciu IOleCommandTarget interfejs najbardziej wewnętrznego aktywnego obiektu. Jest to obiekt, który został ostatnio przekazany w wywołaniu IOleCommandTarget.
Ponieważ IOleCommandTarget interfejs wskazywany przez pCmdTrgtActive jest używany podczas wyświetlania menu kontekstowego zamiast interfejsu obecnie aktywny interfejsu użytkownika obiektu, można wyświetlić menu kontekstowe bez wykonywania fokus poza formant zagnieżdżonych. Przed wyświetleniem żądane menu, jeśli żądanie pochodzi z obiektu działa jako składnik w miejscu podrzędny lub formantu Składnik SOleComponentUIManager usługi zapewnia główny składnik w miejscu możliwość zastąpienia lub scalania menu kontenera z menu aktywnego obiektu.
Wywoływanie wybierany przez użytkownika w menu kontekstowym polecenie występuje przed wywołanie ShowContextMenu zwraca.
Jeśli obiekt VSPackage działający jako formant składnika chce, główny składnik, aby wyświetlić jego menu kontekstowe formant ogólny wywołania formant składnika IOleCommandTarget, podając jego własny identyfikator GUID i identyfikator menu COMP_CONTEXTID_CTRLGENERIC.SOleComponentUIManager Usługi przekazuje te identyfikatory się główny składnik, gdy wywołuje obiekt GetCntrContextMenu. Główny składnik należy rozpoznać tego identyfikatora menu i odpowiedzi z pominięciem menu Kontrola składnika i zastępowanie menu Kontrola ogólnego główny składnik.
Zobacz też
Interfejs IOleComponentUIManager
Przestrzeń nazw Microsoft.VisualStudio.Shell.Interop
Powrót do początku