ProjectItems Interface

 

Contains ProjectItem objects, each representing items in the project.

Namespace:   EnvDTE
Assembly:  EnvDTE (in EnvDTE.dll)

[GuidAttribute("8E2F1269-185E-43C7-8899-950AD2769CCF")]
public interface ProjectItems : IEnumerable

NameDescription
System_CAPS_pubpropertyContainingProject

Gets the project hosting the project item or items.

System_CAPS_pubpropertyCount

Gets a value indicating the number of objects in the collection.

System_CAPS_pubpropertyDTE

Gets the top-level extensibility object.

System_CAPS_pubpropertyKind

Gets an enumeration indicating the type of object.

System_CAPS_pubpropertyParent

Gets the immediate parent object of a ProjectItems collection.

NameDescription
System_CAPS_pubmethodAddFolder(String, String)

Creates a new folder in Solution Explorer.

System_CAPS_pubmethodAddFromDirectory(String)

Adds one or more ProjectItem objects from a directory to the ProjectItems collection.

System_CAPS_pubmethodAddFromFile(String)

Adds a project item from a file that is installed in a project directory structure.

System_CAPS_pubmethodAddFromFileCopy(String)

Copies a source file and adds it to the project.

System_CAPS_pubmethodAddFromTemplate(String, String)

Creates a new project item from an existing item template file and adds it to the project.

System_CAPS_pubmethodGetEnumerator()

Returns an enumeration for items in a collection.

System_CAPS_pubmethodItem(Object)

Returns a ProjectItem object in a ProjectItems collection.

This collection consists of a hierarchical (nested) structure of cascading ProjectItems collections that represent items in each project.

Reference this collection using Solution.Item().ProjectItems.

' Before running, create a new project or open an existing project.
Sub ListProj()
   Dim proj As Project = DTE.ActiveSolutionProjects(0)
   Dim win As Window = _
     DTE.Windows.Item(Constants.vsWindowKindCommandWindow)
   ListProjAux(proj.ProjectItems(), 0)
End Sub

Sub ListProjAux(ByVal projitems As ProjectItems, ByVal Level As Integer)
   Dim projitem As ProjectItem
   For Each projitem In projitems
      MsgBox("Project item: " & projitem.Name, Level)
      ' Recurse if the project item has sub-items...
      Dim projitems2 As ProjectItemsprojitems2 = projitem.ProjectItems
      Dim notsubcoll As Boolean = projitems2 Is Nothing
      If Not notsubcoll Then
         ListProjAux(projitems2, Level + 1)
      End If
   Next
End Sub
Return to top
Show: