Share via


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
Propiedad pública Access Establece u obtiene los atributos de acceso de esta clase de código.
Propiedad pública Attributes Obtiene una colección de todos los atributos de la clase de código.
Propiedad pública Bases Obtiene una colección de clases de las que se deriva esta clase de código.
Propiedad pública Children Obtiene una colección de objetos contenidos en esta clase de código.
Propiedad pública ClassKind Infraestructura. Sólo para uso interno de Microsoft.
Propiedad pública Collection Obtiene la colección contenida en la clase de código.
Propiedad pública Comment Establece u obtiene el comentario asociado a la clase de código.
Propiedad pública DataTypeKind Establece u obtiene la relación de esta clase con otras clases.
Propiedad pública DerivedTypes Obtiene una colección de objetos derivados de la clase de código.No se ha implementado en Visual C#.
Propiedad pública DocComment Obtiene o establece el comentario de documento correspondiente a la clase de código.
Propiedad pública DTE Obtiene el objeto de extensibilidad de nivel superior.
Propiedad pública EndPoint Obtiene el punto de edición que es la ubicación del final de la clase de código.
Propiedad pública Extender Devuelve el objeto Extender solicitado si está disponible para la clase de código.No se ha implementado en Visual C#.
Propiedad pública ExtenderCATID Obtiene el identificador de categoría (CATID) Extender para la clase de código.No se ha implementado en Visual C#.
Propiedad pública ExtenderNames Obtiene una lista de objetos Extender disponibles para la clase de código.No se ha implementado en Visual C#.
Propiedad pública FullName Obtiene la ruta de acceso completa y el nombre de archivo de la clase de código.
Propiedad pública ImplementedInterfaces Obtiene una colección de interfaces implementadas por la clase de código.
Propiedad pública InfoLocation Obtiene las funciones del modelo de código.
Propiedad pública InheritanceKind Obtiene o establece un valor que indica si una clase se puede utilizar para crear una nueva clase.
Propiedad pública IsAbstract Establece u obtiene si la clase de código se declara como abstracta.
Propiedad pública IsCodeType Obtiene un valor que indica si es posible obtener un objeto CodeType a partir de la clase de código.
Propiedad pública IsDerivedFrom Obtiene un valor que indica si la clase de código tiene otra clase de código como base.
Propiedad pública IsGeneric Obtiene un valor que indica si la clase o el struct actual son genéricos.
Propiedad pública IsShared Obtiene o establece el estado compartido (estático) de la clase.
Propiedad pública Kind Obtiene una enumeración que indica el tipo de clase.
Propiedad pública Language Obtiene el lenguaje de programación utilizado para crear la clase.
Propiedad pública Members Obtiene una colección de elementos de código contenidos en la clase.
Propiedad pública Name Establece u obtiene el nombre de la clase.
Propiedad pública Namespace Obtiene un objeto CodeNamespace que define el espacio de nombres primario de la clase.
Propiedad pública Parent Obtiene el objeto primario inmediato de la clase.
Propiedad pública PartialClasses Infraestructura. Sólo para uso interno de Microsoft.
Propiedad pública Parts Obtiene partes de una clase.
Propiedad pública ProjectItem Obtiene el objeto ProjectItem asociado al objeto dado.
Propiedad pública StartPoint Devuelve un objeto TextPoint que define el comienzo de la clase.

Arriba

Métodos

  Nombre Descripción
Método público AddAttribute Crea una nueva construcción de código de atributo e inserta la clase en la ubicación adecuada.
Método público AddBase Agrega un elemento a la lista de objetos heredados.
Método público AddClass Crea una nueva clase en la clase de código especificada.
Método público AddDelegate Crea un nuevo delegado en la clase especificada.
Método público AddEnum Crea una nueva enumeración en la clase.
Método público AddEvent Agrega un evento de clase.
Método público AddFunction Crea una nueva función en la clase.
Método público AddImplementedInterface Agrega una interfaz a la lista de objetos heredados.
Método público AddProperty Crea una nueva construcción de propiedad en la clase.
Método público AddStruct Crea una nueva estructura en la clase.
Método público AddVariable Crea una nueva variable en la clase.
Método público GetEndPoint Devuelve un objeto TextPoint que marca el fin de la clase.
Método público GetStartPoint Devuelve un objeto TextPoint que define el comienzo de la clase.
Método público RemoveBase Quita un objeto de la lista de bases.
Método público RemoveInterface Quita una interfaz de la lista de interfaces implementadas.
Método público 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

EnvDTE80 (Espacio de nombres)

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)

Detectar código utilizando el modelo de código (Visual C#)