Registrar uma janela de ferramenta
Você pode registrar suas janelas de ferramentas usando ProvideToolWindowAttribute e ProvideToolWindowVisibilityAttribute.
Exemplo
[ProvideToolWindow(typeof(PersistedWindowPane), Style = MsVsShell.VsDockStyle.Tabbed, Window = "3ae79031-e1bc-11d0-8f78-00a0c9110057")]
[ProvideToolWindow(typeof(DynamicWindowPane), PositionX=250, PositionY=250, Width=160, Height=180, Transient=true)]
[ProvideToolWindowVisibility(typeof(DynamicWindowPane), /*UICONTEXT_SolutionExists*/"f1536ef8-92ec-443c-9ed7-fdadf150da82")]
[ProvideMenuResource(1000, 1)]
[PackageRegistration(UseManagedResourcesOnly = true)]
[Guid("01069CDD-95CE-4620-AC21-DDFF6C57F012")]
public class PackageToolWindow : Package
{
No código acima, o ProvideToolWindowAttribute registra as janelas e DynamicWindowPane
ferramentas com o PersistedWindowPane
Visual Studio. A janela de ferramenta persistente é encaixada e com guias com o Gerenciador de Soluções, e a janela dinâmica recebe uma posição inicial e um tamanho padrão. A janela dinâmica é tornada transitória, o que indica que ela não foi criada na inicialização. Isso grava ToolWindows
um DontForceCreate
valor na chave no registro do sistema. Para obter mais informações, consulte Configuração de exibição da janela de ferramentas.