Método IOleComponentUIManager.ShowContextMenu (UInt32, Guid, Int32, POINTS , IOleCommandTarget)
Publicado: abril de 2016
Solicita a exibição de um menu de contexto.
Namespace: Microsoft.VisualStudio.Shell.Interop
Assembly: Microsoft.VisualStudio.Shell.Interop (em Microsoft.VisualStudio.Shell.Interop.dll)
Sintaxe
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
Parâmetros
- dwCompRole
[in] Função do objeto in loco VSPackage solicitando o menu de contexto.Para válido dwCompRole valores, consulte OLEROLE.
- rclsidActive
[in] Classe (CLSID) do identificador do objeto in loco VSPackage solicitando o menu de contexto.
- nMenuId
[in] Identifica o menu de contexto a ser exibido.
- pos
[in] Identifica a posição da tela no menu de contexto.
- pCmdTrgtActive
[in] Aponta para o IOleCommandTarget interface para manipular o despacho de comandos do objeto ativo enquanto o menu de contexto é exibido.
Valor de retorno
Type: System.Int32
Se o método for bem-sucedido, ele retorna S_OK.Se ele falhar, ele retorna um código de erro.
Comentários
COM assinatura
De oleipc.idl:
HRESULT IOleComponentUIManager::ShowContextMenu(
[in] DWORD dwCompRole,
[in] REFCLSID rclsidActive,
[in] LONG nMenuId,
[in] REFPOINTS pos,
[in] IOleCommandTarget *pCmdTrgtActive
);
ShowContextMenupode ser usado por objetos de nível superior de ferramenta e VSPackage no local.Objetos de VSPackage no local devem ser o objeto ativo da interface do usuário mais interno ou um subcomponente na cadeia pai do objeto ativo da interface do usuário ou principal.
Quando o menu de contexto não estiver visível, o SOleComponentUIManager serviço retorna despachar comandos do objeto ativo usando o IOleCommandTarget interface do objeto ativo mais interno.Esse é o objeto que foi passado pela última vez na chamada para IOleCommandTarget.
Porque o IOleCommandTarget interface apontada por pCmdTrgtActive é usado enquanto o menu de contexto é exibido em vez da interface do atualmente objeto ativo da interface do usuário, é possível exibir o menu de contexto sem retirar o foco de um controle aninhado.Antes de exibir o menu solicitado, se a solicitação é proveniente de um objeto que atua como um componente de in loco sub ou um controle de componente, o SOleComponentUIManager serviço permite que o componente principal do local a oportunidade de substituir ou mesclar um menu de contêiner com o menu do objeto ativo.
Chamar o comando que o usuário selecionar no menu de contexto ocorre antes da chamada para ShowContextMenu retorna.
Se um objeto VSPackage que atua como um controle do componente quer o componente principal para exibir o menu de contexto do controle genérico, as chamadas de controle do componente IOleCommandTarget, fornecendo seu próprio GUID e o identificador de menu COMP_CONTEXTID_CTRLGENERIC.O SOleComponentUIManager serviço passa esses identificadores para o componente principal quando chama o objeto GetCntrContextMenu.O componente principal deve reconhecer esse identificador de menu e responder a supressão de componente do menu controle e substituindo-o com o menu de controle genérico do componente principal.
Consulte também
Interface IOleComponentUIManager
Namespace Microsoft.VisualStudio.Shell.Interop
Retornar ao topo