Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Gets the Project object associated with the Window object.
Namespace:  EnvDTE
Assembly:  EnvDTE (in EnvDTE.dll)
Syntax
'Declaration
ReadOnly Property Project As Project
'Usage
Dim instance As Window 
Dim value As Project 
value = instance.Project
Project Project { get; }
property Project^ Project {
    Project^ get ();
}
function get Project () : Project
Property Value
Type: EnvDTE.Project
A Project object.
Remarks
The Project property represents the project to which the item belongs.
Examples
Public Sub CodeExample(ByVal dte As DTE2, ByVal addin As AddIn) 
    Try
        ' Before running, create a text file named 
        ' "TextFile1.txt", include it in your solution,
        ' and make it the active window.
        Dim win As Window
        Dim doc As Document
        If dte.Documents.Count > 0 Then
            doc = dte.Documents.Item("TextFile1.txt")
            win = 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?
            Dim w As String = "Windows:" + vbCrLf
            Dim wi As Window
            For Each wi In  win.Collection
                w = w + wi.Caption + vbCrLf
            Next wi
            MessageBox.Show(w)
            ' Determine that the document returned by the document 
            ' property is the same as the document object 'doc'.
            If win.Document Is doc Then
                MessageBox.Show("The documents match!")
            Else
                MessageBox.Show("The documents do not match!")
            End If
            ' Close the window
            win.Close(vsSaveChanges.vsSaveChangesNo)
        End If
    Catch ex As Exception
        MessageBox.Show(ex.Message)
    End Try
End Sub
public void CodeExample(DTE2 dte, AddIn addin)
{   
    try
    {   // Before running, create a text file named 
        // "TextFile1.txt", include it in your solution,
        // and make it the active window.
        Window win;
        Document doc;
        if (dte.Documents.Count > 0)
        {
            doc = dte.Documents.Item("TextFile1.txt");
            win = 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);
    }
}
.NET Framework Security
- Full trust for the immediate caller. This member cannot be used by partially trusted code. For more information, see Using Libraries from Partially Trusted Code.
See Also
Reference
Other Resources
How to: Compile and Run the Automation Object Model Code Examples