CodeClass2 (Interfaz)
Representa una clase en código fuente.
Espacio de nombres: EnvDTE80
Ensamblado: EnvDTE80 (en EnvDTE80.dll)
Sintaxis
'Declaración
<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
El tipo CodeClass2 expone los siguientes miembros.
Propiedades
Nombre | Descripción | |
---|---|---|
Access | Establece u obtiene los atributos de acceso de esta clase de código. | |
Attributes | Obtiene una colección de todos los atributos de la clase de código. | |
Bases | Obtiene una colección de clases de las que se deriva esta clase de código. | |
Children | Obtiene una colección de objetos contenidos en esta clase de código. | |
ClassKind | Infraestructura. Sólo para uso interno de Microsoft. | |
Collection | Obtiene la colección contenida en la clase de código. | |
Comment | Establece u obtiene el comentario asociado a la clase de código. | |
DataTypeKind | Establece u obtiene la relación de esta clase con otras clases. | |
DerivedTypes | Obtiene una colección de objetos derivados de la clase de código.No se ha implementado en Visual C#. | |
DocComment | Obtiene o establece el comentario de documento correspondiente a la clase de código. | |
DTE | Obtiene el objeto de extensibilidad de nivel superior. | |
EndPoint | Obtiene el punto de edición que es la ubicación del final de la clase de código. | |
Extender | Devuelve el objeto Extender solicitado si está disponible para la clase de código.No se ha implementado en Visual C#. | |
ExtenderCATID | Obtiene el identificador de categoría (CATID) Extender para la clase de código.No se ha implementado en Visual C#. | |
ExtenderNames | Obtiene una lista de objetos Extender disponibles para la clase de código.No se ha implementado en Visual C#. | |
FullName | Obtiene la ruta de acceso completa y el nombre de archivo de la clase de código. | |
ImplementedInterfaces | Obtiene una colección de interfaces implementadas por la clase de código. | |
InfoLocation | Obtiene las funciones del modelo de código. | |
InheritanceKind | Obtiene o establece un valor que indica si una clase se puede utilizar para crear una nueva clase. | |
IsAbstract | Establece u obtiene si la clase de código se declara como abstracta. | |
IsCodeType | Obtiene un valor que indica si es posible obtener un objeto CodeType a partir de la clase de código. | |
IsDerivedFrom | Obtiene un valor que indica si la clase de código tiene otra clase de código como base. | |
IsGeneric | Obtiene un valor que indica si la clase o el struct actual son genéricos. | |
IsShared | Obtiene o establece el estado compartido (estático) de la clase. | |
Kind | Obtiene una enumeración que indica el tipo de clase. | |
Language | Obtiene el lenguaje de programación utilizado para crear la clase. | |
Members | Obtiene una colección de elementos de código contenidos en la clase. | |
Name | Establece u obtiene el nombre de la clase. | |
Namespace | Obtiene un objeto CodeNamespace que define el espacio de nombres primario de la clase. | |
Parent | Obtiene el objeto primario inmediato de la clase. | |
PartialClasses | Infraestructura. Sólo para uso interno de Microsoft. | |
Parts | Obtiene partes de una clase. | |
ProjectItem | Obtiene el objeto ProjectItem asociado al objeto dado. | |
StartPoint | Devuelve un objeto TextPoint que define el comienzo de la clase. |
Arriba
Métodos
Nombre | Descripción | |
---|---|---|
AddAttribute | Crea una nueva construcción de código de atributo e inserta la clase en la ubicación adecuada. | |
AddBase | Agrega un elemento a la lista de objetos heredados. | |
AddClass | Crea una nueva clase en la clase de código especificada. | |
AddDelegate | Crea un nuevo delegado en la clase especificada. | |
AddEnum | Crea una nueva enumeración en la clase. | |
AddEvent | Agrega un evento de clase. | |
AddFunction | Crea una nueva función en la clase. | |
AddImplementedInterface | Agrega una interfaz a la lista de objetos heredados. | |
AddProperty | Crea una nueva construcción de propiedad en la clase. | |
AddStruct | Crea una nueva estructura en la clase. | |
AddVariable | Crea una nueva variable en la clase. | |
GetEndPoint | Devuelve un objeto TextPoint que marca el fin de la clase. | |
GetStartPoint | Devuelve un objeto TextPoint que define el comienzo de la clase. | |
RemoveBase | Quita un objeto de la lista de bases. | |
RemoveInterface | Quita una interfaz de la lista de interfaces implementadas. | |
RemoveMember | Quita un miembro de la clase. |
Arriba
Comentarios
Con la introducción de planos y clases parciales, puede haber más de un objeto CodeClass por clase que se compila. Hay una instancia de un objeto CodeClass por cada clase contenida en un archivo. El objeto CodeClass2 puede determinar si representa una clase parcial o completa, y si se implementa como un plano de XML o como código. Las modificaciones o sumas al objeto CodeClass2 sólo se pueden escribir en esta parte (y archivo) de la clase.
Nota
Los valores de los elementos de modelo de código como clases, structs, funciones, atributos, delegados, etc., pueden ser no deterministas una vez realizados determinados tipos de modificaciones; esto significa que no se puede confiar en que sus valores se mantengan siempre igual.Para obtener más información, vea la sección Los valores de elementos de modelo de código pueden cambiar, en Detectar código utilizando el modelo de código (Visual Basic).
Ejemplos
[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
Vea también
Referencia
Otros recursos
Cómo: Compilar y ejecutar los ejemplos de código del modelo de objetos de automatización
Detectar código utilizando el modelo de código (Visual Basic)