ToolWindows Interface
Improves discoverability and usability of tool windows in the object model by providing easy access to the shell’s tool windows in their native types.
Namespace: EnvDTE80
Assembly: EnvDTE80 (in EnvDTE80.dll)
Syntax
'Declaration
<GuidAttribute("19AC6F68-3019-4D65-8D98-404DFB96B8E2")> _
Public Interface ToolWindows
[GuidAttribute("19AC6F68-3019-4D65-8D98-404DFB96B8E2")]
public interface ToolWindows
[GuidAttribute(L"19AC6F68-3019-4D65-8D98-404DFB96B8E2")]
public interface class ToolWindows
[<GuidAttribute("19AC6F68-3019-4D65-8D98-404DFB96B8E2")>]
type ToolWindows = interface end
public interface ToolWindows
The ToolWindows type exposes the following members.
Properties
Name | Description | |
---|---|---|
CommandWindow | Gets the CommandWindow object. | |
DTE | Gets the top-level extensibility object. | |
ErrorList | Gets the list of errors displayed in the IDE. | |
OutputWindow | Gets the OutputWindow object. | |
SolutionExplorer | Gets a UIHierarchy object representing Solution Explorer. | |
TaskList | Gets the TaskList object. | |
ToolBox | Gets the ToolBox object. |
Top
Methods
Name | Description | |
---|---|---|
GetToolWindow | Allows the user to retrieve a window by its title. |
Top
Remarks
Visual Studio tool windows may be accessed through member properties. Other tool windows may be located with the GetToolWindow function.
Examples
This example adds an Output Window, titled "My output", activates it, and displays all the tool windows reached through the Collection object of the parent ToolWindows object. For more information about how to run this example as an add-in, see How to: Compile and Run the Automation Object Model Code Examples.
Imports EnvDTE
Imports EnvDTE80
Public Sub OnConnection(ByVal application As Object, _
ByVal connectMode As ext_ConnectMode, ByVal addInInst As Object, _
ByRef custom As Array) Implements IDTExtensibility2.OnConnection
_applicationObject = CType(application, DTE2)
_addInInstance = CType(addInInst, AddIn)
OutputToolWindow(_applicationObject)
End Sub
Public Sub OutputToolWindow(ByVal dte As DTE2)
Dim myOut As OutputWindow
myOut = _applicationObject.ToolWindows.OutputWindow
Dim myPane As OutputWindowPane
Dim txt As String
txt = ""
MsgBox("Creating an output window.")
myPane = myOut.OutputWindowPanes.Add("My output")
myPane.Activate()
MsgBox("Adding some text to the output window...")
myPane.OutputString("This is the collection of tool windows, _
reached through the Output Window object:" & vbCr)
For Each tempWindow As EnvDTE80.Window2 In myOut.Parent.Collection
txt = txt & (tempWindow.Caption & vbCr)
Next tempWindow
MsgBox("Displaying all the tool window captions _
in the Output window...")
myPane.OutputString(txt)
End Sub
using EnvDTE;
using EnvDTE80;
using System.Windows.Forms;
public void OnConnection(object application,
ext_ConnectMode connectMode, object addInInst, ref Array custom)
{
_applicationObject = (DTE2)application;
_addInInstance = (AddIn)addInInst;
OutputToolWindow(_applicationObject);
}
public void OutputToolWindow(DTE2 dte)
{
OutputWindow myOut;
myOut = _applicationObject.ToolWindows.OutputWindow;
OutputWindowPane myPane;
String txt = null;
MessageBox.Show("Creating an output window.");
myPane = myOut.OutputWindowPanes.Add("My output");
myPane.Activate();
MessageBox.Show("Adding some text to the output window...");
myPane.OutputString("This is the collection of tool
windows,reached through the Output Window object:" + "\n");
foreach (EnvDTE80.Window2 tempWindow in myOut.Parent.Collection)
{
txt = txt + (tempWindow.Caption + "\n");
}
MessageBox.Show("Displaying all the tool window captions
in the output window...");
myPane.OutputString(txt);
}