次の方法で共有


CodeClass2 インターフェイス

ソース コード内のクラスを表します。

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

構文

'宣言
<GuidAttribute("295ADCD4-B052-49EE-934E-C6B36862A7C6")> _
Public Interface CodeClass2 _
    Inherits CodeClass
[GuidAttribute("295ADCD4-B052-49EE-934E-C6B36862A7C6")]
public interface CodeClass2 : CodeClass
[GuidAttribute(L"295ADCD4-B052-49EE-934E-C6B36862A7C6")]
public interface class CodeClass2 : CodeClass
[<GuidAttribute("295ADCD4-B052-49EE-934E-C6B36862A7C6")>]
type CodeClass2 =  
    interface 
        interface CodeClass 
    end
public interface CodeClass2 extends CodeClass

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

プロパティ

  名前 説明
パブリック プロパティ Access このコード クラスのアクセス属性を設定または取得します。
パブリック プロパティ Attributes コード クラスのすべての属性のコレクションを取得します。
パブリック プロパティ Bases このコード クラスの派生元であるクラスのコレクションを取得します。
パブリック プロパティ Children このコード クラスに含まれているオブジェクトのコレクションを取得します。
パブリック プロパティ ClassKind インフラストラクチャ。 マイクロソフト内部でのみ使用します。
パブリック プロパティ Collection コード クラスに含まれているコレクションを取得します。
パブリック プロパティ Comment コード クラスに関連付けられたコメントを設定または取得します。
パブリック プロパティ DataTypeKind このクラスの他のクラスとのリレーションシップを設定または取得します。
パブリック プロパティ DerivedTypes コード クラスから派生したオブジェクトのコレクションを取得します。Visual C# には実装されていません。
パブリック プロパティ DocComment コード クラスのドキュメント コメントを取得または設定します。
パブリック プロパティ DTE トップレベルの機能拡張オブジェクトを取得します。
パブリック プロパティ EndPoint コード クラスの終了位置であるエディット ポイントを取得します。
パブリック プロパティ Extender 要求された Extender オブジェクトをコード クラスで利用できる場合はこのオブジェクトを返します。Visual C# には実装されていません。
パブリック プロパティ ExtenderCATID コード クラスの Extender カテゴリ ID (CATID) を取得します。Visual C# には実装されていません。
パブリック プロパティ ExtenderNames コード クラスで使用できる Extender の一覧を取得します。Visual C# には実装されていません。
パブリック プロパティ FullName コード クラスのファイルの完全パスと名前を取得します。
パブリック プロパティ ImplementedInterfaces コード クラスで実装されたインターフェイスのコレクションを取得します。
パブリック プロパティ InfoLocation コード モデルの機能を取得します。
パブリック プロパティ InheritanceKind 新しいクラスの作成にクラスを使用できるかどうかを示す値を取得または設定します。
パブリック プロパティ IsAbstract コード クラスを抽象クラスとして宣言するかどうかを設定または取得します。
パブリック プロパティ IsCodeType コード クラスから CodeType オブジェクトを取得できるかどうかを示す値を取得します。
パブリック プロパティ IsDerivedFrom コード クラスが別のコード クラスをベースにしているかどうかを示す値を取得します。
パブリック プロパティ IsGeneric 現在のクラスまたは構造体がジェネリックであるかどうかを示す値を取得します。
パブリック プロパティ IsShared 共有された (静的な) クラスのステータスを取得または設定します。
パブリック プロパティ Kind クラスの型を示す列挙値を取得します。
パブリック プロパティ Language クラスの作成に使用されたプログラミング言語を取得します。
パブリック プロパティ Members クラスに含まれているコード要素のコレクションを取得します。
パブリック プロパティ Name クラスの名前を設定または取得します。
パブリック プロパティ Namespace クラスの親名前空間を定義する CodeNamespace オブジェクトを取得します。
パブリック プロパティ Parent クラスのすぐ上の親オブジェクトを取得します。
パブリック プロパティ PartialClasses インフラストラクチャ。 マイクロソフト内部でのみ使用します。
パブリック プロパティ Parts クラスの一部を取得します。
パブリック プロパティ ProjectItem 指定したオブジェクトに関連付けられている ProjectItem を取得します。
パブリック プロパティ StartPoint クラスの先頭を定義する TextPoint オブジェクトを取得します。

このページのトップへ

メソッド

  名前 説明
パブリック メソッド AddAttribute 新しい属性のコード コンストラクターを作成し、適切な位置にクラスを挿入します。
パブリック メソッド AddBase 継承オブジェクトの一覧に項目を追加します。
パブリック メソッド AddClass 指定したコード クラスで新しいクラスを作成します。
パブリック メソッド AddDelegate 指定したクラスの新規デリゲートを作成します。
パブリック メソッド AddEnum クラスに新しい列挙体を作成します。
パブリック メソッド AddEvent クラス イベントを追加します。
パブリック メソッド AddFunction クラスに新しい関数を作成します。
パブリック メソッド AddImplementedInterface 継承オブジェクトの一覧にインターフェイスを追加します。
パブリック メソッド AddProperty クラスで新しいプロパティ コンストラクターを作成します。
パブリック メソッド AddStruct クラスに新しい構造体を作成します。
パブリック メソッド AddVariable クラスに新しい変数を作成します。
パブリック メソッド GetEndPoint クラスの末尾を示す TextPoint オブジェクトを取得します。
パブリック メソッド GetStartPoint クラスの先頭を定義する TextPoint オブジェクトを取得します。
パブリック メソッド RemoveBase ベースの一覧からオブジェクトを削除します。
パブリック メソッド RemoveInterface 実装インターフェイスの一覧からインターフェイスを削除します。
パブリック メソッド RemoveMember クラスのメンバーを削除します。

このページのトップへ

解説

設計図と部分クラスでは、コンパイルされるクラスごとに複数の CodeClass オブジェクトがある場合があります。 ファイル内の各クラスには、CodeClass オブジェクトのインスタンスが 1 つあります。 CodeClass2 オブジェクトは、部分クラスと完全なクラスのどちらを表すか、および XML の設計図とコードのどちらとして実装されるかを決定できます。 CodeClass2 オブジェクトに対する編集または追加だけがクラスのこの部分 (およびファイル) に書き込まれる場合があります。

注意

特定の種類の編集を行った後に、クラス、構造体、関数、属性、デリゲートなどのコード モデル要素の値を決定できないことがあります。つまり、これらの要素の値は、信頼できる値ではなく、常に同じ値になるとは限りません。詳細については、「コード モデルを使用したコードの調査 (Visual Basic)」で、コード モデル要素値を変更する方法についての説明を参照してください。

[Visual Basic]

' Macro code.
Sub CodeClass2Example()
    ' Iterates through the main class and
    ' lists its parts.
    Dim sel As TextSelection
    Dim myClass1 As EnvDTE80.CodeClass2
    Dim classPart As EnvDTE80.CodeClass2

    sel = applicationObject.ActiveDocument.Selection
    myClass1 = sel.ActivePoint.CodeElement _
    (vsCMElement.vsCMElementClass)
    If myClass1.ClassKind = _
    vsCMClassKind.vsCMClassKindMainClass Then
        For Each classPart In myClass1.Collection
            MsgBox(classPart.Name)
        Next
    End If
End Sub

参照

関連項目

EnvDTE80 名前空間

その他の技術情報

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

コード モデルを使用したコードの調査 (Visual Basic)

コード モデルを使用したコードの調査 (Visual C#)