Compartilhar via


Window2.Close(vsSaveChanges) Method

Definition

Closes the open document and optionally saves it, or closes and destroys the window.

void Close(EnvDTE::vsSaveChanges SaveChanges = EnvDTE.vsSaveChanges.vsSaveChangesNo);
[System.Runtime.InteropServices.DispId(132)]
public void Close (EnvDTE.vsSaveChanges SaveChanges = EnvDTE.vsSaveChanges.vsSaveChangesNo);
[<System.Runtime.InteropServices.DispId(132)>]
abstract member Close : EnvDTE.vsSaveChanges -> unit
Public Sub Close (Optional SaveChanges As vsSaveChanges = EnvDTE.vsSaveChanges.vsSaveChangesNo)

Parameters

SaveChanges
vsSaveChanges

Optional. A vsSaveChanges constant that determines whether to save an item or items.

Implements

Attributes

Examples

This example makes a text file the active window. It then uses it to iterate through the windows collection to display a number of properties, and it then closes the window object.

Before running this example, open a project in Visual Studio, add a text file named "TextFile1.txt" to it, and make it the active window.

Imports EnvDTE  
Imports EnvDTE80  
Sub WinActivateExample(ByVal dte As DTE2)  
    Try  
        ' Before running, 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 project that contains this window is named:" _  
            & win.Project.Name)  
            ' Activate the window.  
            win.Activate()  
            ' Other available windows.  
            Dim w As String = "Other available windows in  _  
            the collection:" & vbCr  
            For Each wi As Window2 In win.Collection  
                w = w & wi.Caption & vbCr  
            Next  
            MsgBox(w)  
            ' Close the window.  
            win.Close(vsSaveChanges.vsSaveChangesNo)  
        End If  
    Catch ex As Exception  
        MsgBox(ex.Message)  
    End Try  
End Sub  
using EnvDTE;  
using EnvDTE80;  
using System.Windows.Forms;  
public void WinActivateExample(DTE2 dte)  
{  
    try  
    {  
       // Before running, create a text file named   
        // "TextFile1.txt" and include it in your solution.  
        // You do not need to 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 = "Other available windows in the collection:\n";  
            foreach (Window wi in win.Collection)  
            {  
                w = w + wi.Caption + "\n";  
            }  
            // Close the window.  
            win.Close(vsSaveChanges.vsSaveChangesNo);  
        }  
    }  
    catch (Exception ex)  
    {  
        MessageBox.Show(ex.Message);  
    }  
}  

Applies to