Interface IVsHierarchy
Publicado: agosto de 2016
Fornece gerenciamento de hierarquia para VSPackages que implementam as hierarquias de projeto.
Namespace: Microsoft.VisualStudio.Shell.Interop
Assembly: Microsoft.VisualStudio.Shell.Interop (em Microsoft.VisualStudio.Shell.Interop.dll)
Sintaxe
[ComConversionLossAttribute]
[InterfaceTypeAttribute(1)]
[GuidAttribute("59B2D1D0-5DB0-4F9F-9609-13F0168516D6")]
public interface IVsHierarchy
[ComConversionLossAttribute]
[InterfaceTypeAttribute(1)]
[GuidAttribute("59B2D1D0-5DB0-4F9F-9609-13F0168516D6")]
public interface class IVsHierarchy
[<ComConversionLossAttribute>]
[<InterfaceTypeAttribute(1)>]
[<GuidAttribute("59B2D1D0-5DB0-4F9F-9609-13F0168516D6")>]
type IVsHierarchy = interface end
<ComConversionLossAttribute>
<InterfaceTypeAttribute(1)>
<GuidAttribute("59B2D1D0-5DB0-4F9F-9609-13F0168516D6")>
Public Interface IVsHierarchy
Métodos
Nome | Descrição | |
---|---|---|
AdviseHierarchyEvents(IVsHierarchyEvents, UInt32) | Estabelece a notificação de eventos de hierarquia do cliente sem a hierarquia de implementar IConnectionPointContainer. |
|
Close() | Fecha e limpa uma hierarquia assim que o ambiente determina que ele não é mais usado. |
|
GetCanonicalName(UInt32, String) | Retorna um nome de cadeia de caracteres exclusivo, de um item na hierarquia. Usado para persistência de espaço de trabalho, como lembrar posições da janela. |
|
GetGuidProperty(UInt32, Int32, Guid) | Obtém propriedades cujos valores são GUIDs. |
|
GetNestedHierarchy(UInt32, Guid, IntPtr, UInt32) | É possível para um nó de uma determinada hierarquia para ser um atalho para o meio de outra hierarquia. |
|
GetProperty(UInt32, Int32, Object) | Obtém as propriedades de um determinado nó ou da hierarquia. |
|
GetSite(IServiceProvider) | Obtém o provedor de serviço do qual acessar os serviços. |
|
ParseCanonicalName(String, UInt32) | Retorna o identificador do item da hierarquia, dado seu nome canônico. |
|
QueryClose(Int32) | Determina se a determinada hierarquia pode ser fechada. |
|
SetGuidProperty(UInt32, Int32, Guid) | Define as propriedades cujos valores são GUIDs. |
|
SetProperty(UInt32, Int32, Object) | Define as propriedades de um nó específico ou da hierarquia. |
|
SetSite(IServiceProvider) | Define o provedor de serviço do qual acessar os serviços. |
|
UnadviseHierarchyEvents(UInt32) | Desabilita a notificação de eventos de hierarquia do cliente sem exigir que a hierarquia de implementa IConnectionPointContainer. |
|
Unused0() | Adiciona novos métodos sem recompilar ou quebrando a compatibilidade binária. |
|
Unused1() | Adiciona novos métodos sem recompilar ou quebrando a compatibilidade binária. |
|
Unused2() | Adiciona novos métodos sem recompilar ou quebrando a compatibilidade binária. |
|
Unused3() | Adiciona novos métodos sem recompilar ou quebrando a compatibilidade binária. |
|
Unused4() | Adiciona novos métodos sem recompilar ou quebrando a compatibilidade binária. |
Métodos de Extensão
Nome | Descrição | |
---|---|---|
EnumImportingProjects() | Enumera todos os projetos que estão importando os recursos compartilhados pertencentes a determinada hierarquia de projeto compartilhado de ativos.(Definido por SharedProjectUtilities.) |
|
EnumOwningProjectsOfSharedAssets() | Os projetos ativos compartilhados que possuem e gerenciam os recursos compartilhados importados pelo projeto de determinado.(Definido por SharedProjectUtilities.) |
|
GetActiveProjectContext() | Obtém o contexto do projeto ativo.(Definido por SharedProjectUtilities.) |
|
GetSharedItemsImportFullPaths() | Obtém os caminhos completos dos arquivos "Shared.items" importados pelo projeto de determinado.(Definido por SharedProjectUtilities.) |
|
IsCapabilityMatch(String) | Sobrecarregado. Verifica se um determinado projeto corresponde aos requisitos indicados em uma expressão AppliesTo.(Definido por PackageUtilities.) |
|
IsProjectImportingSharedAssets() | Determina se o projeto determinado importa recursos compartilhados.(Definido por SharedProjectUtilities.) |
|
IsSharedAssetsProject() | Determina se o projeto fornecido é um projeto de ativos compartilhados.(Definido por SharedProjectUtilities.) |
|
SetActiveProjectContext(IVsHierarchy) | Define o contexto do projeto ativo.(Definido por SharedProjectUtilities.) |
Comentários
O IVsHierarchy é uma interface genérica para uma hierarquia de nós. Cada nó, incluindo o nó raiz, pode ter propriedades arbitrárias associadas a ele. Cada nó no objeto de hierarquia é identificado usando um cookie (VSITEMID), que indica um nó específico. Esse cookie é invisível ao consumidor do IVsHierarchy, e geralmente é um ponteiro para alguns dados particulares mantidos pela implementação da hierarquia.
A VSITEMID é um DWORD identifica exclusivamente um nó em uma hierarquia. ItemIDs de um IVsHierarchy não pode ser passado para outra hierarquia. Além disso, observe que itemids tem uma vida útil limitada, conforme indicado pelos eventos disparados por hierarquia, para que manter itemids de longa duração exigirá ambos o recebendo esses eventos, ou a conversão do itemid em formato canônico, persistente.
Um item em uma hierarquia pode ser um nó folha, um contêiner de outros itens, ou um link em alguma outra hierarquia usando GetNestedHierarchy.
O IVsHierarchy interface não é usada apenas para hierarquias de projeto. Por exemplo, o Server Explorer janela implementa o IVsHierarchy interface para exibir sua hierarquia, que não é uma hierarquia de projeto.
Há momentos em que é útil consultar uma hierarquia sobre vários nós virtuais, como a própria hierarquia ou os nós selecionados dentro da hierarquia. Onde os nós virtuais potencialmente são de interesse, um dos predefinida VSITEMID valores podem ser passados.
Modos de exibição do ambiente de um projeto como uma hierarquia, ou seja, uma árvore de nós no qual os nós são itens de projeto. Cada nó também tem um conjunto de propriedades associadas e fornece gerenciamento de hierarquia para VSPackages que implementam as hierarquias de projeto.
Observações para implementadores:
Implementado pelo VSPackages que criar sua própria hierarquia de projeto.
Observações para chamadores:
Chamado pelo ambiente de obter e definir propriedades de hierarquia.
Consulte também
Namespace Microsoft.VisualStudio.Shell.Interop
Retornar ao topo