Compartilhar via


Gerenciando a caixa de ferramentas.

O SDK do Visual Studio permite que um VSPackage, como, por exemplo, um editor ou designer, para gerenciar a participação e a aparência da caixa de ferramentas.

Além disso, O caixa de ferramentas si pode ser gerenciado usando a automação. Para obter mais informações sobre o gerenciamento de uma caixa de ferramentas através da automação, consulte Como controlar a Caixa de Ferramentas.

Seleção automática do guia de caixa de ferramentas

Um determinado caixa de ferramentas guia ou categoria poderá ser automaticamente ativada com base no qual editor ou designer está ativo no momento. Por exemplo, se um designer de formulários estiver ativado, é aconselhável a All Windows Forms guia selecionada.

Esse suporte é limitado aos editores e designers que precisam:

  1. A implementação de um objeto de fábrica para fornecer as instâncias do editor ou designer. Para obter mais informações sobre como implementar um designer ou editor de objeto de fábrica, consulte Fábricas de editor.

  2. Registro de guia caixa de ferramentas que é ativado automaticamente se o editor ou designer estiver presente. Para obter mais informações sobre como registrar a seleção da guia caixa de ferramentas automáticas, consulte Registrar os recursos de suporte da caixa de ferramentas.

Controlando a caixa de ferramentas.

Complementando o suporte de automação, a SDK do Visual Studio fornece as seguintes interfaces para fornecer os VSPackages maior controle sobre como o caixa de ferramentas é gerenciado.

Interface

Descrição

IToolboxService

Permite que os aplicativos gerenciar, adicionar e remover ToolboxItem objetos a partir do caixa de ferramentas. Também permite a configuração da aparência e caixa de ferramentas categorias.

IVsToolbox2

Permite que os aplicativos gerenciar, adicionar e remover baseada no Active caixa de ferramentas controles, bem como configurar caixa de ferramentas categorias e aparência.

IVsToolbox3

Estende a funcionalidade encontrada no IVsToolbox2 , fornecendo suporte completo para localização e persistência.

Há vários pontos importantes a ter em mente ao trabalhar com essas interfaces:

  • IToolboxServiceestá disponível somente para VSPackages baseada na estrutura de pacote gerenciado.

  • Controles de ActiveX não podem ser adicionados diretamente para o caixa de ferramentas usando IToolboxService.

  • Um VSPackage deve usar IVsToolbox2 para adicionar controles baseados em ActiveX ou hospedam o controle em um controle de invólucro que deriva de ActiveX AxHost.

    Visual Studio fornece a Aximp.exe ferramenta para automatizar a quebra automática de um controle de ActiveX em um controle derivado de AxHost. Para obter mais informações, consulte Aximp.exe (Importador de Controle ActiveX do Windows Forms).

  • IVsToolbox, IVsToolbox2, e IVsToolbox3 são baseados em COM interfaces disponíveis por meio de assemblies de interoperabilidade.

  • IVsToolbox2deriva de IVsToolbox e implementa todos os seus métodos.

    Objetos obter apenas uma instância do IVsToolbox2.

  • IVsToolbox3não é derivada de IVsToolbox2 e não implementa seus métodos.

    Objetos que precisam de funcionalidade nas duas interfaces devem obter instâncias de ambas as interfaces do ambiente.

  • Ao trabalhar com IVsToolbox2 e IVsToolbox3, informações sobre os nomes canônicos (não traduzidos) das guias são tratadas pelo GetIDOfTab e SetIDOfTab métodos.

  • Ao usar o IToolboxService, cabe ao implementador de IT para gerenciar informações localizadas, como nomes de categorias.

Usar o mecanismo de configurações para permitir que os usuários salvem caixa de ferramentas configurações acessadas por usuários na Configurações de importação/exportação comando, o IDE encontrado Ferramentas menu. Para obter mais informações sobre como usar as configurações, consulte Persistência de estado e o IDE de Visual Studio.

Consulte também

Referência

IVsToolbox2

IVsToolbox3

IVsToolboxActiveUserHook

IVsToolboxClipboardCycler

IVsToolboxUser

Outros recursos

Persistência de estado e o IDE de Visual Studio

A caixa de ferramentas (Visual Studio SDK)