Partilhar via


Seleção e a moeda no IDE

O Visual Studio o ambiente de desenvolvimento integrado (IDE) mantém informações sobre dos usuários objetos selecionados no momento usando a seleção contexto. Com o contexto de seleção VSPackages pode tomar parte na moeda de rastreamento de duas maneiras:

  • Por propagando as informações de moeda sobre as VSPackages ao IDE.

  • Monitorando as seleções de usuários ativos no momento dentro do IDE.

Contexto de seleção

O Visual Studio IDE globalmente mantém o controle de moeda do IDE no seu próprio objeto de contexto global de seleção. A tabela a seguir mostra os elementos que compõem o contexto da seleção.

Elemento

Descrição

Hierarquia atual

Normalmente o projeto atual; uma hierarquia atual de NULL indica que a solução como um todo é atual.

ItemID atual

O item selecionado dentro da hierarquia atual; Quando há várias seleções em uma janela de projeto, pode haver vários itens atuais.

AtualSelectionContainer

Contém um ou mais objetos para o qual a janela de propriedades deve exibir propriedades.

Além disso, o ambiente mantém duas listas globais:

  • Uma lista de identificadores de comando de interface do usuário ativos

  • Uma lista de tipos de elemento ativo no momento.

Seleção e tipos de janela

O Visual Studio IDE organiza o windows em dois tipos gerais:

  • Windows do tipo de hierarquia

  • Janelas de quadro, como, por exemplo, janelas de ferramenta e documento

O IDE controla moeda diferente para cada um desses tipos de janela.

A janela de tipo de projeto a mais comum é o solution explorer, o IDE controla. Uma janela do tipo de projeto controla a hierarquia global e o ItemID do contexto global de seleção e a janela baseia-se na seleção do usuário para determinar a hierarquia atual. Para windows do tipo de projeto, o ambiente oferece o serviço global SVsShellMonitorSelection, a quais VSPackages pode monitorar os valores atuais para elementos abertos. Propriedade navegando no ambiente é orientada por este serviço global.

Por outro lado, janelas de quadro, usam o DocObject dentro da janela de quadro para empurrar o valor de SelectionContext (a trio ItemID/hierarquia/SelectionContainer). . Janelas de quadro usam o serviço SVsShellMonitorSelection para essa finalidade. O DocObject pode enviar somente os valores do contêiner de seleção, deixando os valores de locais para a hierarquia e o ItemID inalteradas, como é normal para documentos de filho MDI.

Eventos e moeda

Podem ocorrer dois tipos de eventos que afetam a noção do ambiente da moeda:

  • Eventos que são propagados para o nível global e alterar o contexto de seleção do quadro de janela. Exemplos desse tipo de evento incluem uma janela filho MDI que está sendo aberta, uma janela de ferramenta global que está sendo aberto ou uma janela de ferramenta do tipo de projeto que está sendo aberto.

  • Eventos que alterem os elementos rastreados dentro do contexto de seleção do quadro de janela. Os exemplos incluem a alteração da seleção dentro de um DocObject ou alterar a seleção em uma janela do tipo de projeto.

Consulte também

Conceitos

Objetos de contexto da seleção

Feedback para o usuário.

Outros recursos

Visão geral do Windows de documento