Tool Window Display Configuration

When a VSPackage registers a tool window, the default position, size, docking style, and other visibility information is specified in optional values. For more information on tool window registration, see Registering Tool Windows

Window Display information

A tool window's basic display configuration is stored in up to six optional values:

HKEY_LOCAL_MACHINE\
  Software\
    Microsoft\
      VisualStudio\
        <Version>\
          ToolWindows\
            <Tool Window GUID>\
              (Default)       = reg_sz: <Package GUID> 
              Name            = reg_sz: <name of tool window> 
              Float           = reg_sz: <position> 
              Style           = reg_sz: <dock style> 
              Window          = reg_sz: <window GUID> 
              Orientation     = reg_sz: <orientation> 
              DontForceCreate = reg_dword: 0x00000000

Name

Type

Data

Description

Name

REG_SZ

"Short name goes here"

A short name that describes the tool window. Used only for reference in the registry.

Float

REG_SZ

"X1,Y1,X2,Y2"

Four comma separated values. X1, Y1 is the coordinate of the upper-left corner of the tool window. X2, Y2 is the coordinate of the lower-right corner. All values are in screen coordinates.

Style

REG_SZ

"MDI"

"Float"

"Linked"

"Tabbed"

"AlwaysFloat"

A keyword specifying the initial display state of the tool window.

"MDI" = docked with MDI window.

"Float" = floating.

"Linked" = linked with another window (specified in the Window entry).

"Tabbed" = combined with another tool window.

"AlwaysFloat" = cannot be docked.

For more information, see the Comments section below.

Window

REG_SZ

<GUID>

The GUID of a window to which the tool window can be linked or tabbed. The GUID may belong to one of your own windows or one of the windows in the Visual Studio IDE.

Orientation

REG_SZ

"Left"

"Right"

"Top"

"Bottom"

See the Comments section below.

DontForceCreate

REG_DWORD

0 or 1

When this entry is present and its value is not zero, the window is loaded, but not immediately displayed.

Comments

The Orientation entry defines the position where the tool window docks when its title bar is double-clicked. The position is relative to the window specified in the Window entry. If the Style entry is set to "Linked", the Orientation entry can be "Left", "Right", "Top", or "Bottom". If the Style entry is "Tabbed", the Orientation entry can be "Left" or "Right" and specifies where the tab is added. If the Style entry is "Float", the tool window floats first. When the title bar is double-clicked, the Orientation and Window entries apply, and the window uses the "Tabbed" style. If the Style entry is "AlwaysFloat", the tool window cannot be docked. If the Style entry is "MDI", the tool window is linked to the MDI area, and the Window entry is ignored.

Example

HKEY_LOCAL_MACHINE\
  Software\
    Microsoft\
      VisualStudio\
        8.0Exp\
          ToolWindows\
            {A0C5197D-0AC7-4B63-97CD-8872A789D233}\
              (Default)       = reg_sz: {DA9FB551-C724-11D0-AE1F-00A0C90FFFC3}
              DontForceCreate = reg_dword: 0x00000000
              Float           = reg_sz: 100,100,450,300
              Name            = reg_sz: Bookmarks
              Orientation     = reg_sz: Left
              Style           = reg_sz: Tabbed
              Window          = reg_sz: {34E76E81-EE4A-11D0-00A0C90FFFC3}

Tool Window Visibility

Values in the optional Visibility subkey determine a tool window's visibility settings. The names of the values are used to store the GUIDs of commands that require the window's visibility. If the command is executed, the IDE guarantees that the tool window is created and made visible.

HKEY_LOCAL_MACHINE\
  Software\
    Microsoft\
      VisualStudio\
        <Version>\
          ToolWindows\
            <Tool Window GUID>\
              Visibility\
                (Default) = reg_sz:
                <GUID>    = reg_dword:
                <GUID>    = reg_dword:
                <GUID>    = reg_sz:

Name

Type

Data

Description

(Default)

REG_SZ

None

Leave empty.

<GUID>

REG_DWORD or REG_SZ

0 or a descriptive string.

Optional. The entry's name must be the GUID of a command requiring visibility. The value just holds an informative string. Typically, the value is a reg_dword set to 0.

Example

HKEY_LOCAL_MACHINE\
  Software\
    Microsoft\
      VisualStudio\
        8.0Exp\
          ToolWindows\
            {EEFA5220-E298-11D0-8F78-00A0C9110057}\
              Visibility\
                (Default) = reg_sz:
                {93694fa0-0397-11d1-9f4e-00a0c911004f} = reg_dword: 0x00000000
                {9DA22B82-6211-11d2-9561-00600818403B} = reg_dword: 0x00000000
                {adfc4e66-0397-11d1-9f4e-00a0c911004f} = reg_dword: 0x00000000

See Also

Concepts

VSPackage Essentials