Compartilhar via


Método IVsUIHierarchyWindow.Init (IVsUIHierarchy, UInt32, Object)

 

Inicializa um uso personalizado de uma janela de hierarquia de interface do usuário.

Namespace:   Microsoft.VisualStudio.Shell.Interop
Assembly:  Microsoft.VisualStudio.Shell.Interop (em Microsoft.VisualStudio.Shell.Interop.dll)

Sintaxe

int Init(
    IVsUIHierarchy pUIH,
    uint grfUIHWF,
    out object ppunkOut
)
int Init(
    IVsUIHierarchy^ pUIH,
    unsigned int grfUIHWF,
    [OutAttribute] Object^% ppunkOut
)
abstract Init : 
        pUIH:IVsUIHierarchy *
        grfUIHWF:uint32 *
        ppunkOut:Object byref -> int
Function Init (
    pUIH As IVsUIHierarchy,
    grfUIHWF As UInteger,
    <OutAttribute> ByRef ppunkOut As Object
) As Integer

Parâmetros

  • grfUIHWF
    [in] Características da janela de hierarquia de interface do usuário.Para obter uma lista de valores, consulte o __UIHWINFLAGS enumeração.
  • ppunkOut
    [out] Ponteiro para o IUnknown interface da IVsWindowFrame objeto que contém a janela hierarquia de interface do usuário.

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

HRESULT IVsUIHierarchyWindow::Init(
   [in] IVsUIHierarchy *pUIH,
   [in] UIHWINFLAGS grfUIHWF,
   [out] IUnknown** ppunkOut
);

A janela de projeto do ambiente é um elemento de interface do usuário reutilizáveis.Os VSPackages pode usar uma instância de uma janela de hierarquia de interface do usuário para que uma janela de ferramenta que funções semelhantes a interno Janela projeto.Um exemplo de uso da janela de hierarquia de interface do usuário é o Server Explorer.

Uma janela de hierarquia de interface do usuário é criada passando CLSID_VsUIHierarchyWindow em uma chamada ao método CreateToolWindow.O IVsUIHierarchyWindow interface pode ser acessada usando a interface QueryInterface da VSFPROPID_DocView o objeto da janela ferramenta retornado por essa chamada.

Se você precisa obter a qualquer serviço acessível para a janela hierarquia de interface do usuário (por exemplo, o serviço de SID_SVsTrackSelectionEx ou o serviço de SID_SUndoManager), você pode recuperar o VSFPROPID_SPFrame propriedade da moldura da janela da janela hierarquia de interface do usuário.Isso retorna o IServiceProvider interface da moldura da janela.

Windows de hierarquia de interface do usuário que tenha vários nós de nível superior exigem uma forma de manipular as seleções que incluem várias hierarquias.Isso é porque a hierarquia pai comum lida com os comandos, se a seleção estiver entre hierarquias.Para lidar com essas seleções, faça o seguinte:

  • Não permitir seleção múltipla, definindo o valor de grfUIHWF para UIHWF_ForceSingleSelect.

  • Ter interna em SolutionObject usado para tratar a movimentação entre seleções da hierarquia, definindo o valor de grfUIHWF para UIHWF_UseSolutionAsHiddenRootHierarchy.

  • Especifique um personalizado IVsHierarchy o objeto como o nó de hierarquia de raiz ocultos, definindo o valor de grfUIHWF para UIHWF_InitWithHiddenRootHierarchy.Essa hierarquia de raiz não pode ter nenhum filho e só é usada para tratar seleções entre várias hierarquias de nível superior.Para especificar uma hierarquia de raiz oculto que é o pai do nó de nível superior, defina o valor de grfUIHWF para UIHWF_InitWithHiddenParentRoot.

Consulte também

Interface IVsUIHierarchyWindow
Namespace Microsoft.VisualStudio.Shell.Interop

Retornar ao topo