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
参照
関連項目
その他の技術情報
方法 : オートメーション オブジェクト モデルのコード例をコンパイルおよび実行する