2010-06-09 4 views
0

У меня есть надстройка VS, которая создает панель инструментов и отображает ее (на основе предыдущих настроек видимости) при запуске VS. Надстройка работает отлично в VS 2005 и 2008 годах, но в 2010 году панель инструментов отображается только во время загрузки VS.Почему Visual Studio 2010 скрывает панель инструментов надстройки при запуске?

Как только VS завершит загрузку, панель инструментов исчезнет.

Я могу повторить проблему образца с образцом кода смеси Альфа: http://code.msdn.microsoft.com/AlphaBlendToolbar

Для воспроизведения: Зарегистрируйте надстройку и настроить его для запуска при запуске VS. Закройте VS и откройте его. Панель инструментов видна на несколько мгновений, и она исчезает!

ответ

0

Как оказалось, проблема заключается в том, что слишком рано устанавливать видимость панели инструментов. Когда вы задерживаете настройку видимости до тех пор, пока панель инструментов не будет полностью настроена, она будет работать в VS 2010 - что странно, поскольку тот же самый код отлично работал в VS 2003, VS 2005 и VS 2008!

В любом случае, чтобы сохранить панель инструментов видна в образце AlphaBlend кода, закомментируйте строки конфигурации панели инструментов, как показано ниже:

CommandBar toolbar = commandBars.Add("AlphaToolbar", MsoBarPosition.msoBarTop, System.Type.Missing, true); 
//toolbar.Visible = true; 
//toolbar.Enabled = true; 

и восстановить их после того, как средства управления, которые были добавлены на панель инструментов:

commandOmega.AddControl(toolbar, 2); 
toolbar.Visible = true; 
toolbar.Enabled = true; 

Благодаря NeelimaM за то, что вы помогли обнаружить это на сайте галереи MSDN Code Gallery.

Смежные вопросы