Freigeben über


CodeClass2.Bases-Eigenschaft

Ruft eine Auflistung von Klassen ab, aus denen diese Codeklasse abgeleitet ist.

Namespace:  EnvDTE80
Assembly:  EnvDTE80 (in EnvDTE80.dll)

Syntax

'Declaration
ReadOnly Property Bases As CodeElements
    Get
CodeElements Bases { get; }
property CodeElements^ Bases {
    CodeElements^ get ();
}
abstract Bases : CodeElements
function get Bases () : CodeElements

Eigenschaftswert

Typ: EnvDTE.CodeElements
Eine CodeElements-Auflistung.

Implementiert

CodeClass.Bases

Hinweise

Basen sind übergeordnete Typen von CodeElements. In Visual Basic und Visual C# enthält die Auflistung jeweils nur ein Element. Ausgenommen sind die Codetypen CodeInterface und CodeInterface2.

Tipp

Die Werte von Codemodellelementen wie Klassen, Strukturen, Funktionen, Attributen, Delegaten usw. können nach bestimmten Bearbeitungsvorgängen nicht deterministisch sein, d. h., dass nicht mehr davon ausgegangen werden kann, dass ihre Werte immer unverändert bleiben. Weitere Informationen finden Sie im Abschnitt zum Änderungsverhalten von Codemodellelementwerten unter Ermitteln von Code über das Codemodell (Visual Basic).

Beispiele

[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);
    }
}

.NET Framework-Sicherheit

Siehe auch

Referenz

CodeClass2 Schnittstelle

Bases-Überladung

EnvDTE80-Namespace

Weitere Ressourcen

Gewusst wie: Kompilieren und Ausführen der Codebeispiele für das Automatisierungsobjektmodell

Ermitteln von Code über das Codemodell (Visual Basic)

Ermitteln von Code über das Codemodell (Visual C#)