Window2.Collection, propriété
Obtient la collection contenant l'objet Window qui prend en charge cette propriété.
Espace de noms : EnvDTE80
Assembly : EnvDTE80 (dans EnvDTE80.dll)
Syntaxe
'Déclaration
ReadOnly Property Collection As Windows
Windows Collection { get; }
property Windows^ Collection {
Windows^ get ();
}
abstract Collection : Windows with get
function get Collection () : Windows
Valeur de propriété
Type : Windows
Collection Windows.
Exemples
Cet exemple itère au sein de la collection de fenêtres et affiche les légendes de fenêtre.
Pour plus d'informations sur l'exécution de cet exemple comme complément, consultez Comment : compiler et exécuter les exemples de code du modèle objet 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)
CollectionExample(_applicationObject)
End Sub
Sub CollectionExample(ByVal dte As DTE2)
Try
' Before running this example, create a text file named
' "TextFile1.txt", include it in your solution,
' and make it the active window.
Dim win As Window2
Dim doc As Document
If (_applicationObject.Documents.Count > 0) Then
doc = _applicationObject.Documents.Item("TextFIle1.txt")
win = CType(doc.ActiveWindow, Window2)
' Show the name of the project that contains this
' window and document.
MsgBox("The name of the containing project: " & vbCr _
& win.Project.Name)
' Activate the window.
win.Activate()
' Show the name of the current ProjectItem in the window.
MsgBox("The current project item is: " & win.ProjectItem.Name)
' How many other windows are available?
Dim w As String = "Windows: " & vbCr
For Each wi As Window In win.Collection
w = w & wi.Caption & vbCr
Next
MsgBox(w)
' Determine that the document returned by the document
' property is the same as the document object 'doc'.
If (win.Document Is doc) Then
MsgBox("The documents match!")
Else
MsgBox("The documents do not match!")
End If
' Close the window.
win.Close(vsSaveChanges.vsSaveChangesYes)
End If
Catch ex As Exception
MsgBox(ex.Message)
End Try
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;
CollectionExample(_applicationObject);
}
public void CollectionExample(DTE2 dte)
{
try
{
// Before running, create a text file named
// "TextFile1.txt", include it in your solution,
// and make it the active window.
Window2 win;
Document doc;
if (dte.Documents.Count > 0)
{
doc = dte.Documents.Item("TextFile1.txt");
win = (EnvDTE80.Window2)doc.ActiveWindow;
// Show the name of the project that contains this
// window and document.
MessageBox.Show(win.Project.Name);
win.Activate(); // Activate the window
// Show the name of the current ProjectItem in the window.
MessageBox.Show(win.ProjectItem.Name);
// How many other windows are available?
string w = "Windows:\n";
foreach (Window wi in win.Collection)
{
w = w + wi.Caption + "\n";
}
MessageBox.Show(w);
// Determine that the document returned by the document
// property is the same as the document object 'doc'.
if (win.Document.Equals(doc))
MessageBox.Show("The documents match!");
else
MessageBox.Show("The documents do not match!");
// Close the window.
win.Close(vsSaveChanges.vsSaveChangesNo);
}
}
catch(Exception ex)
{
MessageBox.Show(ex.Message);
}
}
Sécurité .NET Framework
- Confiance totale accordée à l'appelant immédiat. Ce membre ne peut pas être utilisé par du code d'un niveau de confiance partiel. Pour plus d'informations, voir Utilisation de bibliothèques à partir de code d'un niveau de confiance partiel.