Поделиться через


Регистрация окна инструмента

Вы можете зарегистрировать окна инструментов с помощью ProvideToolWindowAttribute и ProvideToolWindowVisibilityAttribute.

Пример


[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
{

В приведенном выше ProvideToolWindowAttribute коде регистрируются PersistedWindowPane окна инструментов и DynamicWindowPane окна инструментов в Visual Studio. Окно сохраняемого инструмента закреплено и наложено на вкладки с Обозреватель решений, а динамическое окно получает начальную позицию и размер по умолчанию. Динамическое окно выполняется временно, указывающее, что он не создается при запуске. Это записывает DontForceCreate значение в ToolWindows раздел в системном реестре. Дополнительные сведения см. в разделе "Настройка окна инструментов".