Window2.ProjectItem 属性

定义

获取与 Window 对象关联的 ProjectItem 对象。

public:
 property EnvDTE::ProjectItem ^ ProjectItem { EnvDTE::ProjectItem ^ get(); };
public:
 property EnvDTE::ProjectItem ^ ProjectItem { EnvDTE::ProjectItem ^ get(); };
[System.Runtime.InteropServices.DispId(125)]
public EnvDTE.ProjectItem ProjectItem { [System.Runtime.InteropServices.DispId(125)] get; }
[<System.Runtime.InteropServices.DispId(125)>]
[<get: System.Runtime.InteropServices.DispId(125)>]
member this.ProjectItem : EnvDTE.ProjectItem
Public ReadOnly Property ProjectItem As ProjectItem

属性值

ProjectItem

ProjectItem 对象。

实现

属性

示例

此示例将文本文件作为活动窗口。 然后,它使用它来循环访问 windows 集合并显示该窗口的项目项的名称。

运行此示例之前,请在中打开一个项目, Visual Studio 并向其添加一个名为 "TextFile1.txt" 的文本文件。

Imports EnvDTE  
Imports EnvDTE80  
Sub ProjectExample(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 name of the project containing the window: "  _  
            & win.Project.Name)  
            ' Acticate the winodw.  
            win.Activate()  
            ' Show the name of the current ProjectITem.  
            MsgBox("The name of the current project item is: "  _  
            & win.ProjectItem.Name)  
            ' How many other windows are available?  
            Dim w As String = "Available windows are :" & vbCr  
            For Each wi As Window2 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.vsSaveChangesNo)  
        End If  
    Catch ex As Exception  
        MsgBox(ex.Message)  
    End Try  
End Sub  
using EnvDTE;  
using EnvDTE80;  
using System.Windows.Forms;  
public void ProjectExample(DTE2 dte)  
{  
    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("The name of the project containing   
the window: " + win.ProjectItem.Name);  
            // How many other windows are available?  
            string w = "Available windows are :\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);  
    }  
}  

适用于