Compartir a través de


Window2 (Interfaz)

El objeto Window representa una ventana del entorno.

Espacio de nombres:  EnvDTE80
Ensamblado:  EnvDTE80 (en EnvDTE80.dll)

Sintaxis

'Declaración
<GuidAttribute("25731932-3283-4AE0-B7CF-F4691B8BE523")> _
Public Interface Window2 _
    Inherits Window
[GuidAttribute("25731932-3283-4AE0-B7CF-F4691B8BE523")]
public interface Window2 : Window
[GuidAttribute(L"25731932-3283-4AE0-B7CF-F4691B8BE523")]
public interface class Window2 : Window
[<GuidAttribute("25731932-3283-4AE0-B7CF-F4691B8BE523")>]
type Window2 =  
    interface 
        interface Window 
    end
public interface Window2 extends Window

El tipo Window2 expone los siguientes miembros.

Propiedades

  Nombre Descripción
Propiedad pública AutoHides Obtiene o establece si la ventana de herramientas se puede ocultar.
Propiedad pública Caption Obtiene o establece el título de la ventana.
Propiedad pública Collection Obtiene la colección que contiene el objeto Window compatible con esta propiedad.
Propiedad pública CommandBars Obtiene una colección de Microsoft.VisualStudio.CommandBars contenida en la ventana activa.
Propiedad pública ContextAttributes Obtiene una colección de ContextAttributes que permite a los clientes de automatización agregar atributos nuevos a los elementos seleccionados en la ventana Ayuda dinámica y proporcionar ayuda contextual correspondiente a dichos atributos.
Propiedad pública Document Obtiene el objeto Document asociado al elemento, en caso de que exista alguno.
Propiedad pública DocumentData Infraestructura. Sólo para uso interno de Microsoft.
Propiedad pública DTE Obtiene el objeto de extensibilidad de nivel superior.
Propiedad pública Height Obtiene o establece un valor que indica las dimensiones de la ventana en píxeles.
Propiedad pública HWnd Infraestructura. Sólo para uso interno de Microsoft.
Propiedad pública IsFloating Obtiene o establece un valor que indica si la ventana de herramientas flota sobre otras ventanas.
Propiedad pública Kind Infraestructura. Sólo para uso interno de Microsoft.
Propiedad pública Left Obtiene o establece la distancia horizontal entre el borde izquierdo interno de un objeto y el borde izquierdo de su contenedor.
Propiedad pública Linkable Obtiene o establece un valor que indica si la ventana de herramientas se puede acoplar a otras ventanas de herramientas.
Propiedad pública LinkedWindowFrame Obtiene un objeto Window que representa el marco que contiene la ventana.
Propiedad pública LinkedWindows Obtiene una colección de todas las ventanas vinculadas contenidas en el marco de la ventana vinculada.
Propiedad pública Object Obtiene un objeto al que se puede tener acceso en tiempo de ejecución por su nombre.
Propiedad pública ObjectKind Obtiene el tipo del objeto Window.Object, que es una cadena GUID que representa la herramienta incluida en la ventana.
Propiedad pública Project Obtiene el objeto Project asociado al objeto Window.
Propiedad pública ProjectItem Obtiene el objeto ProjectItem asociado al objeto Window.
Propiedad pública Selection Obtiene un objeto que representa la selección actual en el objeto Window.
Propiedad pública Top Obtiene o establece la distancia vertical entre el borde superior interno de un objeto y el borde superior de su contenedor.
Propiedad pública Type Infraestructura. Sólo para uso interno de Microsoft.
Propiedad pública Visible Obtiene o establece la visibilidad de una ventana.
Propiedad pública Width Obtiene o establece el ancho de la ventana en unidades de carácter.
Propiedad pública WindowState Obtiene o establece el estado de la ventana: minimizada, normal, etc.

Arriba

Métodos

  Nombre Descripción
Método público Activate Mueve el foco al elemento actual.
Método público Attach Infraestructura. Sólo para uso interno de Microsoft.
Método público Close Cierra el documento abierto y, opcionalmente, lo guarda o cierra y destruye la ventana.
Método público Detach Infraestructura. Sólo para uso interno de Microsoft.
Método público SetFocus Infraestructura. Sólo para uso interno de Microsoft.
Método público SetKind Infraestructura. Sólo para uso interno de Microsoft.
Método público SetSelectionContainer Permite configurar objetos para que estén activos en la Propiedades (ventana) cuando esta ventana también se encuentre activa.
Método público SetTabPicture Carga un mapa de bits en una imagen con fichas en una ventana de herramientas vinculada por ficha.

Arriba

Ejemplos

Este ejemplo vincula la Ventana de salida, la Ventana de comandos y el Explorador de soluciones. A continuación, manipula el ancho y alto de dichas ventanas y, por último, las desacopla del marco vinculado de la ventana.

Para obtener más información sobre cómo ejecutar este ejemplo como un complemento, vea Cómo: Compilar y ejecutar los ejemplos de código del modelo de objetos de automatización.

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);
}

Vea también

Referencia

EnvDTE80 (Espacio de nombres)