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 | (繼承自 CodeClass)。 | |
Access | 設定或取得這個程式碼類別的存取屬性。 | |
Attributes | (繼承自 CodeClass)。 | |
Attributes | 取得程式碼類別所有屬性的集合。 | |
Bases | (繼承自 CodeClass)。 | |
Bases | 取得衍生自這個程式碼類別的類別集合。 | |
Children | (繼承自 CodeClass)。 | |
Children | 取得這個程式碼類別內物件的集合。 | |
ClassKind | 基礎架構。僅限 Microsoft 內部使用。 | |
Collection | (繼承自 CodeClass)。 | |
Collection | 取得程式碼類別內所包含的集合。 | |
Comment | (繼承自 CodeClass)。 | |
Comment | 取得或設定與此程式碼類別關聯的註解。 | |
DataTypeKind | 設定或取得此類別與其他類別的關聯性 (Relationship)。 | |
DerivedTypes | (繼承自 CodeClass)。 | |
DerivedTypes | 取得從程式碼類別衍生的物件集合。尚未在 Visual C# 中進行實作。 | |
DocComment | (繼承自 CodeClass)。 | |
DocComment | 取得或設定程式碼類別的文件註解。 | |
DTE | (繼承自 CodeClass)。 | |
DTE | 取得最上層的擴充性物件。 | |
EndPoint | (繼承自 CodeClass)。 | |
EndPoint | 取得程式碼類別結尾位置的編輯點。 | |
Extender[String] | (繼承自 CodeClass)。 | |
Extender[String] | 傳回要求的擴充項 (Extender) 物件 (如果適用於這個程式碼類別)。尚未在 Visual C# 中進行實作。 | |
ExtenderCATID | (繼承自 CodeClass)。 | |
ExtenderCATID | 取得程式碼類別的擴充項分類 ID (CATID)。尚未在 Visual C# 中進行實作。 | |
ExtenderNames | (繼承自 CodeClass)。 | |
ExtenderNames | 取得程式碼類別的可用擴充項清單。尚未在 Visual C# 中進行實作。 | |
FullName | (繼承自 CodeClass)。 | |
FullName | 取得程式碼類別檔案的完整路徑和名稱。 | |
ImplementedInterfaces | (繼承自 CodeClass)。 | |
ImplementedInterfaces | 取得由這個程式碼類別實作的介面集合。 | |
InfoLocation | (繼承自 CodeClass)。 | |
InfoLocation | 取得程式碼模型的功能。 | |
InheritanceKind | 取得或設定值,指出類別是否可以用於建立新類別。 | |
IsAbstract | (繼承自 CodeClass)。 | |
IsAbstract | 設定或取得某一程式碼類別是否宣告為抽象。 | |
IsCodeType | (繼承自 CodeClass)。 | |
IsCodeType | 取得值,指出是否可以從這個程式碼類別取得 CodeType 物件。 | |
IsDerivedFrom[String] | (繼承自 CodeClass)。 | |
IsDerivedFrom[String] | 取得值,指出程式碼類別是否有另一個程式碼類別做為其基底。 | |
IsGeneric | 取得值,表示目前類別或結構 (Struct) 是否為泛型。 | |
IsShared | 取得或設定類別的共用 (靜態) 狀態。 | |
Kind | (繼承自 CodeClass)。 | |
Kind | 取得列舉型別,指出類別的型別。 | |
Language | (繼承自 CodeClass)。 | |
Language | 取得撰寫類別時所使用的程式語言。 | |
Members | (繼承自 CodeClass)。 | |
Members | 取得這個類別內程式碼項目的集合。 | |
Name | (繼承自 CodeClass)。 | |
Name | 設定或取得類別名稱。 | |
Namespace | (繼承自 CodeClass)。 | |
Namespace | 取得 CodeNamespace 物件,定義類別的父命名空間。 | |
Parent | (繼承自 CodeClass)。 | |
Parent | 取得類別的直接上層父物件。 | |
PartialClasses | 基礎架構。僅限 Microsoft 內部使用。 | |
Parts | 取得部分的類別。 | |
ProjectItem | (繼承自 CodeClass)。 | |
ProjectItem | 取得與指定之物件相關聯的 ProjectItem。 | |
StartPoint | (繼承自 CodeClass)。 | |
StartPoint | 取得 TextPoint 物件,定義類別的開頭。 |
回頁首
方法
回頁首
備註
在藍圖和部分類別的簡介中提到,每個已編譯的類別都可以有一個以上的 CodeClass 物件。對於檔案中的各個類別,都會有一個 CodeClass 物件的執行個體。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