ProjectItems インターフェイス

ProjectItem オブジェクトを含みます。各オブジェクトがプロジェクトの項目を表します。

名前空間:  EnvDTE
アセンブリ:  EnvDTE (EnvDTE.dll 内)

構文

'宣言
<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

ProjectItems 型で公開されるメンバーは以下のとおりです。

プロパティ

  名前 説明
パブリック プロパティ ContainingProject 1 つ以上のプロジェクト項目をホストするプロジェクトを取得します。
パブリック プロパティ Count コレクション内のオブジェクトの数を示す値を取得します。
パブリック プロパティ DTE トップ レベルの機能拡張オブジェクトを取得します。
パブリック プロパティ Kind オブジェクトの型を示す列挙値を取得します。
パブリック プロパティ Parent ProjectItems コレクションの直接の親オブジェクトを取得します。

このページのトップへ

メソッド

  名前 説明
パブリック メソッド AddFolder ソリューション エクスプローラー に新規のフォルダーを作成します。
パブリック メソッド AddFromDirectory ディレクトリから 1 つ以上の ProjectItem オブジェクトを ProjectItems コレクションに追加します。
パブリック メソッド AddFromFile プロジェクトのディレクトリ構造にインストールされたファイルから、プロジェクト項目を追加します。
パブリック メソッド AddFromFileCopy ソース ファイルをコピーし、プロジェクトに追加します。
パブリック メソッド AddFromTemplate 既存の項目テンプレート ファイルから新しいプロジェクト項目を作成し、プロジェクトに追加します。
パブリック メソッド GetEnumerator() コレクションを反復処理する列挙子を返します。 (IEnumerable から継承されます。)
パブリック メソッド GetEnumerator() コレクション内の項目の列挙を返します。
パブリック メソッド Item ProjectItems コレクション内の ProjectItem オブジェクトを返します。

このページのトップへ

解説

このコレクションは、各プロジェクトの項目を表す ProjectItems コレクションを重ねた階層 (入れ子) 構造になっています。

このコレクションを参照するには、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 ProjectItems
      projitems2 = projitem.ProjectItems
      Dim notsubcoll As Boolean = projitems2 Is Nothing
      If Not notsubcoll Then
         ListProjAux(projitems2, Level + 1)
      End If
   Next
End Sub

参照

関連項目

EnvDTE 名前空間

その他の技術情報

プロジェクトとソリューションの制御

方法 : オートメーション オブジェクト モデルのコード例をコンパイルおよび実行する