ProjectItems Interface
Contains ProjectItem objects, each representing items in the project.
Namespace: EnvDTE
Assembly: EnvDTE (in EnvDTE.dll)
Syntax
'Declaration
<GuidAttribute("8E2F1269-185E-43C7-8899-950AD2769CCF")> _
Public Interface ProjectItems _
Inherits IEnumerable
[GuidAttribute("8E2F1269-185E-43C7-8899-950AD2769CCF")]
public interface ProjectItems : IEnumerable
[GuidAttribute(L"8E2F1269-185E-43C7-8899-950AD2769CCF")]
public interface class ProjectItems : IEnumerable
[<GuidAttribute("8E2F1269-185E-43C7-8899-950AD2769CCF")>]
type ProjectItems =
interface
interface IEnumerable
end
public interface ProjectItems extends IEnumerable
The ProjectItems type exposes the following members.
Properties
Name | Description | |
---|---|---|
ContainingProject | Gets the project hosting the project item or items. | |
Count | Gets a value indicating the number of objects in the collection. | |
DTE | Gets the top-level extensibility object. | |
Kind | Gets an enumeration indicating the type of object. | |
Parent | Gets the immediate parent object of a ProjectItems collection. |
Top
Methods
Name | Description | |
---|---|---|
AddFolder | Creates a new folder in Solution Explorer. | |
AddFromDirectory | Adds one or more ProjectItem objects from a directory to the ProjectItems collection. | |
AddFromFile | Adds a project item from a file that is installed in a project directory structure. | |
AddFromFileCopy | Copies a source file and adds it to the project. | |
AddFromTemplate | Creates a new project item from an existing item template file and adds it to the project. | |
GetEnumerator | Returns an enumeration for items in a collection. | |
Item | Returns a ProjectItem object in a ProjectItems collection. |
Top
Remarks
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.
Examples
' 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 ProjectItems
projitems2 = projitem.ProjectItems
Dim notsubcoll As Boolean = projitems2 Is Nothing
If Not notsubcoll Then
ListProjAux(projitems2, Level + 1)
End If
Next
End Sub
See Also
Reference
Other Resources
Controlling Projects and Solutions
How to: Compile and Run the Automation Object Model Code Examples