Compartir a través de


CodeClass2.Bases (Propiedad)

Obtiene una colección de clases de las que se deriva esta clase de código.

Espacio de nombres:  EnvDTE80
Ensamblado:  EnvDTE80 (en EnvDTE80.dll)

Sintaxis

'Declaración
ReadOnly Property Bases As CodeElements
CodeElements Bases { get; }
property CodeElements^ Bases {
    CodeElements^ get ();
}
abstract Bases : CodeElements with get
function get Bases () : CodeElements

Valor de propiedad

Tipo: CodeElements
Colección de CodeElements.

Comentarios

Las bases son súper tipos de CodeElements. En Visual Basic y Visual C# siempre hay un solo elemento en la colección, salvo que el código sea de tipo CodeInterface o CodeInterface2.

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]

Sub BasesExample(ByVal dte As DTE2)
    ' Before running this example, open a code document from a project
    ' and place the insertion point inside a class definition.
    Try
        ' Retrieve the CodeClass at the insertion point.
        Dim sel As TextSelection = _
            CType(dte.ActiveDocument.Selection, TextSelection)
        Dim cls As CodeClass2 = _
            CType(sel.ActivePoint.CodeElement( _
            vsCMElement.vsCMElementClass), CodeClass2)

        ' Enumerate the CodeClass's bases.
        Dim bases As String = ""
        Dim elem As CodeElement2
        For Each elem In cls.Bases
            bases &= elem.FullName & vbCrLf
        Next

        MsgBox(cls.Name & " has the following bases:" & _
            vbCrLf & vbCrLf & bases)
    Catch ex As System.Exception
        MsgBox(ex.Message)
    End Try
End Sub

[C#]

public void BasesExample(DTE2 dte)
{
    // Before running this example, open a code document from a project
    // and place the insertion point inside a class definition.
    try
    {
        // Retrieve the CodeClass at the insertion point.
        TextSelection sel = 
            (TextSelection)dte.ActiveDocument.Selection;
        CodeClass2 cls = 
            (CodeClass)sel.ActivePoint.get_CodeElement2(
            vsCMElement.vsCMElementClass);

        // Enumerate the CodeClass's bases.
        string bases = "";
        foreach (CodeElement2 elem in cls.Bases)
        {
        bases += elem.FullName + Environment.NewLine;
        }

        MessageBox.Show(cls.Name + " has the following bases:" + 
            Environment.NewLine + Environment.NewLine + bases);
    }
    catch (Exception ex)
    {
        MessageBox.Show(ex.Message);
    }
}

Seguridad de .NET Framework

Vea también

Referencia

CodeClass2 Interfaz

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#)