Для VS 2010 SDK Microsoft добавила новый флаг __VSCREATETOOLWIN2.CTW_fDocumentLikeTool
Вы можете использовать этот способ:
public override void OnToolWindowCreated()
{
IVsWindowFrame windowFrame = Frame as IVsWindowFrame;
object varFlags;
windowFrame.GetProperty((int)__VSFPROPID.VSFPROPID_CreateToolWinFlags, out varFlags);
int flags = (int)varFlags | (int)__VSCREATETOOLWIN2.CTW_fDocumentLikeTool;
windowFrame.SetProperty((int)__VSFPROPID.VSFPROPID_CreateToolWinFlags, flags);
}
Таким образом, окно инструментов остается открытым в «Document Well» при отладке
Однако я должен сказать, что это создает нам некоторые проблемы при отладке проектов, не позволяя нам открывать файлы кода во время отладки, например, если управление документами в Visual Studio было «блочным», для этого нового флага не так много информации ...
Поэтому мы предпочли подключиться к EnvDTE.DebuggerEvents и показать окно инструментов, если скрыть, когда начинается сеанс отладки ...
(наше окно инструментов имеет MultiInstances = false)