Window2-Schnittstelle
Das Window-Objekt stellt ein Fenster der Umgebung dar.
Namespace: EnvDTE80
Assembly: EnvDTE80 (in EnvDTE80.dll)
Syntax
'Declaration
<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
Der Window2-Typ macht die folgenden Member verfügbar.
Eigenschaften
Name | Beschreibung | |
---|---|---|
AutoHides | Legt fest oder gibt zurück, ob das Toolfenster ausgeblendet werden kann. | |
Caption | Ruft den Titel des Fensters ab oder legt ihn fest. | |
Collection | Ruft die Auflistung mit dem Window-Objekt ab, das diese Eigenschaft unterstützt. | |
CommandBars | Ruft eine Auflistung von Microsoft.VisualStudio.CommandBars im aktuellen Fenster ab. | |
ContextAttributes | Ruft eine ContextAttributes-Auflistung ab, über die Automatisierungsclients den derzeit im Fenster Dynamische Hilfe ausgewählten Elementen neue Attribute hinzufügen und kontextbezogene Hilfe für die zusätzlichen Attribute bereitstellen können. | |
Document | Ruft das dem Element zugeordnete Document-Objekt ab, falls eines vorhanden ist. | |
DocumentData | Infrastruktur. Nur für die interne Verwendung durch Microsoft vorgesehen. | |
DTE | Ruft das Erweiterbarkeitsobjekt der obersten Ebene ab. | |
Height | Ruft einen Wert ab oder legt ihn fest, der die Abmessungen des Fensters in Pixel anzeigt. | |
HWnd | Infrastruktur. Nur für die interne Verwendung durch Microsoft vorgesehen. | |
IsFloating | Ruft einen Wert ab oder legt diesen fest, der angibt, ob das Toolfenster unverankert über anderen Fenstern angezeigt werden kann. | |
Kind | Infrastruktur. Nur für die interne Verwendung durch Microsoft vorgesehen. | |
Left | Ruft den horizontalen Abstand zwischen dem inneren linken Rand eines Objekts und dem linken Rand des zugehörigen Containers ab oder legt ihn fest. | |
Linkable | Ruft einen Wert ab bzw. legt diesen fest, der angibt, ob das Toolfenster an andere Toolfenster angedockt werden kann. | |
LinkedWindowFrame | Ruft ein Window-Objekt ab, das den Fensterrahmen darstellt, in dem sich das Fenster befindet. | |
LinkedWindows | Ruft eine Auflistung aller im verknüpften Rahmenfenster enthaltenen verknüpften Fenster ab. | |
Object | Ruft ein Objekt ab, auf das zur Laufzeit über den Namen zugegriffen werden kann. | |
ObjectKind | Ruft den Typ des Window.Object-Objekts ab, bei dem es sich um eine GUID-Zeichenfolge handelt, die das im Fenster enthaltene Tool darstellt. | |
Project | Ruft das dem Window-Objekt zugeordnete Project-Objekt ab. | |
ProjectItem | Ruft das dem Window-Objekt zugeordnete ProjectItem-Objekt ab. | |
Selection | Ruft ein Objekt ab, das die aktuelle Auswahl im Window-Objekt darstellt. | |
Top | Ruft den vertikalen Abstand zwischen dem inneren oberen Rand eines Objekts und dem oberen Rand des zugehörigen Containers ab oder legt ihn fest. | |
Type | Infrastruktur. Nur für die interne Verwendung durch Microsoft vorgesehen. | |
Visible | Ruft die Sichtbarkeit eines Fensters ab oder legt sie fest. | |
Width | Ruft die Breite des Fensters in Zeicheneinheiten ab oder legt sie fest. | |
WindowState | Ruft den Zustand des Fensters ab oder legt ihn fest (minimiert, normal usw.). |
Zum Seitenanfang
Methoden
Name | Beschreibung | |
---|---|---|
Activate | Verschiebt den Fokus auf das aktuelle Element. | |
Attach | Infrastruktur. Nur für die interne Verwendung durch Microsoft vorgesehen. | |
Close | Schließt das geöffnete Dokument und speichert es optional oder schließt und zerstört das Fenster. | |
Detach | Infrastruktur. Nur für die interne Verwendung durch Microsoft vorgesehen. | |
SetFocus | Infrastruktur. Nur für die interne Verwendung durch Microsoft vorgesehen. | |
SetKind | Infrastruktur. Nur für die interne Verwendung durch Microsoft vorgesehen. | |
SetSelectionContainer | Ermöglicht das Aktivieren von Objekten im Eigenschaftenfenster, wenn dieses Fenster aktiv ist. | |
SetTabPicture | Lädt eine Bitmap in ein Bild im Registerkartenformat, das sich in einem Toolfenster befindet, das über Registerkarten verknüpft ist. |
Zum Seitenanfang
Beispiele
In diesem Beispiel werden das Ausgabefenster, das Befehlsfenster und der Projektmappen-Explorer miteinander verknüpft. Dann wird die Breite und die Höhe der verknüpften Fenster geändert. Schließlich werden alle Fenster vom verknüpften Fensterrahmen abgedockt.
Weitere Informationen zum Ausführen dieses Beispiels als Add-In finden Sie unter Gewusst wie: Kompilieren und Ausführen der Codebeispiele für das Automatisierungsobjektmodell.
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);
}