Compartilhar via


Interface Windows2

A coleção de Windows contém todas as janelas no ambiente.

Namespace:  EnvDTE80
Assembly:  EnvDTE80 (em EnvDTE80.dll)

Sintaxe

'Declaração
<GuidAttribute("31EFB5B1-C655-4ADA-BB52-3ED87FB2A4AE")> _
Public Interface Windows2 _
    Inherits Windows
[GuidAttribute("31EFB5B1-C655-4ADA-BB52-3ED87FB2A4AE")]
public interface Windows2 : Windows
[GuidAttribute(L"31EFB5B1-C655-4ADA-BB52-3ED87FB2A4AE")]
public interface class Windows2 : Windows
[<GuidAttribute("31EFB5B1-C655-4ADA-BB52-3ED87FB2A4AE")>]
type Windows2 =  
    interface 
        interface Windows 
    end
public interface Windows2 extends Windows

O tipo Windows2 expõe os membros a seguir.

Propriedades

  Nome Descrição
Propriedade pública Count Obtém um valor que indica o número de objetos na coleção de Windows2 .
Propriedade pública DTE Obtém o objeto de nível superior de extensibilidade.
Propriedade pública Parent Obtém o objeto pai imediato de uma coleção de Windows2 .

Superior

Métodos

  Nome Descrição
Método público CreateLinkedWindowFrame Cria um objeto de Window e coloca duas janelas nele.
Método público CreateToolWindow Cria uma nova janela da ferramenta que contém o objeto especificado ou o controle ActiveX de Document .
Método público CreateToolWindow2 Cria uma nova janela da ferramenta e hospeda um tipo definido pelo usuário, controle .NET nele.
Método público GetEnumerator Obtém uma enumeração para itens de uma coleção.
Método público Item Retorna um membro indexado de uma coleção de Windows .

Superior

Exemplos

Este exemplo é vinculado juntos Janela de Saída, A janela de comando, e Gerenciador de Soluções. Manipula na largura e a altura dessas janelas vinculadas, e finalmente desencaixar-las todas do quadro de janela vinculado.

Para obter mais informações sobre como executar este exemplo como um suplemento, consulte Como compilar e executar os exemplos de código do modelo de objeto Automation.

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)
    LinkedWindowsExample(_applicationObject)
End Sub
Sub LinkedWindowsExample(ByVal dte As DTE2)
    Dim Frame As Window2
    Dim wins As Windows2
    wins = CType(_applicationObject.Windows, EnvDTE80.Windows2)
    Dim w1 As Window2 = _
 CType(_applicationObject.Windows.Item _
(Constants.vsWindowKindSolutionExplorer), EnvDTE80.Window2)
    Dim w2 As Window2 = _
 CType(_applicationObject.Windows.Item _
(Constants.vsWindowKindOutput), EnvDTE80.Window2)
    Dim w3 As Window2 = _
 CType(_applicationObject.Windows.Item _
(Constants.vsWindowKindCommandWindow), EnvDTE80.Window2)
    ' Create a linked window frame and dock Solution Explorer 
    ' and the Ouput window together inside it.
    Frame = CType(wins.CreateLinkedWindowFrame _
(w1, w2, vsLinkedWindowType.vsLinkedWindowTypeDocked), _
 EnvDTE80.Window2)
    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.
    Frame.LinkedWindows.Add(w3)
    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.
    Frame.LinkedWindows.Remove(w3)
    MsgBox("Now undocking the rest of the windows from the frame.")
    Frame.LinkedWindows.Remove(w2)
    Frame.LinkedWindows.Remove(w1)
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;
    LinkedWindowsExample(_applicationObject);
}
public void LinkedWindowsExample(DTE2 dte)
{
    Window2 Frame;
    Windows2 wins;
    wins = (EnvDTE80.Windows2)_applicationObject.Windows;
    Window2 w1 = 
(EnvDTE80.Window2)_applicationObject.Windows.Item
(Constants.vsWindowKindSolutionExplorer);
Window2 w2 =
 (EnvDTE80.Window2)_applicationObject.Windows.Item
(Constants.vsWindowKindOutput);
    Window2 w3 = 
(EnvDTE80.Window2)_applicationObject.Windows.Item
(Constants.vsWindowKindCommandWindow);
    // Create a linked window frame and dock Solution Explorer
    // and the Output window together inside it.
    Frame = (EnvDTE80.Window2)wins.CreateLinkedWindowFrame
(w1, w2, vsLinkedWindowType.vsLinkedWindowTypeDocked);
    MessageBox.Show("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.
    Frame.LinkedWindows.Add(w3);
    MessageBox.Show("Total number of windows in the linked 
window frame: " + Frame.LinkedWindows.Count);
    // Resize the entire linked window frame.
    Frame.Width = 500;
    Frame.Height = 600;
    MessageBox.Show("Frame height and width changed.
 Now changing Command window height.");
    // Resize the height of the Command window.
    Frame.LinkedWindows.Item(3).Height = 800;
    MessageBox.Show("Now undocking the Command window from 
the frame.");
    // Undock the Command window from the frame.
    Frame.LinkedWindows.Remove(w3);
    MessageBox.Show("Now undocking the rest of the windows 
from the frame.");
    Frame.LinkedWindows.Remove(w2);
    Frame.LinkedWindows.Remove(w1);
}

Consulte também

Referência

Namespace EnvDTE80

Outros recursos

Como compilar e executar os exemplos de código do modelo de objeto Automation