Compartir a través de


CodeClass2.DerivedTypes (Propiedad)

Obtiene una colección de objetos derivados de la clase de código. No se ha implementado en Visual C#.

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

Sintaxis

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

Valor de propiedad

Tipo: CodeElements
Colección de CodeElements.

Comentarios

La propiedad DerivedTypes devuelve una colección CodeElements de los tipos que derivan de la clase de código. La colección DerivedTypes se limita a devolver los tipos que se derivan de clases de código dentro de un único proyecto, y no a través de otros proyectos o lenguajes. Si el elemento de código es vsCMElementInterface, la colección devuelta también incluirá objetos CodeClass que implementen la interfaz.

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

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