Freigeben über


CodeClass2.DerivedTypes-Eigenschaft

Ruft eine Auflistung von Objekten ab, die von der Codeklasse abgeleitet sind. Nicht implementiert in Visual C#.

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

Syntax

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

Eigenschaftswert

Typ: EnvDTE.CodeElements
Eine CodeElements-Auflistung.

Implementiert

CodeClass.DerivedTypes

Hinweise

Die DerivedTypes-Eigenschaft gibt eine CodeElements-Auflistung von Typen zurück, die von der Codeklasse ableiten. Die DerivedTypes-Auflistung gibt nur Typen zurück, die von Codeklassen innerhalb eines einzelnen Projekts abgeleitet sind. Andere Projekte und Sprachen werden nicht berücksichtigt. Wenn das Codeelement eine vsCMElementInterface ist, enthält die zurückgegebene Auflistung auch CodeClass-Objekte, die die Schnittstelle implementieren.

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 DerivedTypesExample(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 CodeClass = _
            CType(sel.ActivePoint.CodeElement( _
            vsCMElement.vsCMElementClass), CodeClass)

        ' Find the namespace's children.
        Dim types As String
        Dim elem As CodeElement
        For Each elem In cls.DerivedTypes
            types &= elem.Name & vbCrLf
        Next

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

[C#]

public void DerivedTypesExample(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;
        CodeClass cls = 
           (CodeClass)sel.ActivePoint.get_CodeElement(
           vsCMElement.vsCMElementClass);

        // Find the namespace's children.
        string types = "";
        
        foreach (CodeElement elem in cls.DerivedTypes)
            types += elem.Name + "\r\n";

        MessageBox.Show(cls.Name + 
            " has the following derived types:\r\n\r\n" + types);
    }
    catch (Exception ex)
    {
        MessageBox.Show(ex.Message);
    }
}

.NET Framework-Sicherheit

Siehe auch

Referenz

CodeClass2 Schnittstelle

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