Windows Interface

The Windows collection contains all windows in the environment.

Namespace:  EnvDTE
Assembly:  EnvDTE (in EnvDTE.dll)

public interface Windows : IEnumerable

The Windows type exposes the following members.

Public propertyCountGets a value indicating the number of objects in the Windows collection.
Public propertyDTEGets the top-level extensibility object.
Public propertyParentGets the immediate parent object of a Windows collection.

Public methodCreateLinkedWindowFrameCreates a Window object and places two windows in it.
Public methodCreateToolWindowCreates a new tool window containing the specified Document object or ActiveX control.
Public methodGetEnumeratorReturns an enumeration for items in a collection.
Public methodItemReturns a Window object in a Windows collection.

Sub LinkedWindowsExample()
   Dim Frame As Window
   Dim w1 As Window = DTE.Windows.Item(Constants.vsWindowKindSolutionExplorer)
   Dim w2 As Window = DTE.Windows.Item(Constants.vsWindowKindOutput)
   Dim w3 As Window = DTE.Windows.Item(Constants.vsWindowKindCommandWindow)

   ' Create a linked window frame and dock Solution Explorer 
   ' and the Ouput window together inside it.
   Frame = DTE.Windows.CreateLinkedWindowFrame(w1, w2, vsLinkedWindowType.vsLinkedWindowTypeDocked)
   MsgBox("Total number of windows in the linked window frame: " & Frame.LinkedWindows.Count)

    ' Add another tool window, the Command window, to the frame with 
    ' the other two.
   MsgBox("Total number of windows in the linked window frame: " & Frame.LinkedWindows.Count)

   ' Resize the entire linked window frame.
   Frame.Width = 500
   Frame.Height = 600
   MsgBox("Frame height and width changed. Now changing Command window height.")

   ' Resize the height of the Command window.
   Frame.LinkedWindows.Item(3).Height = 800
   MsgBox("Now undocking the Command window from the frame.")

   ' Undock the Command window from the frame.
End Sub

Community Additions