Compartir a través de


CodeAttribute2.Children (Propiedad)

Obtiene una colección de objetos contenidos en esta construcción de código.

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

Sintaxis

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

Valor de propiedad

Tipo: EnvDTE.CodeElements
Devuelve una colección de CodeElements.

Comentarios

Si un objeto no tiene elementos secundarios, se devolverá Nothing o nullreferencia null (Nothing en Visual Basic).

Esta propiedad es utilizada principalmente por Visual C++.La propiedad Children devuelve todos los objetos que puedan devolverse desde un elemento de código.Una clase, por ejemplo, devuelve miembros, bases, interfaces implementadas, atributos, comentarios, etc.

Para recorrer en iteración los miembros de un espacio de nombres o tipo (clase, struct, interfaz, etc.), es necesario utilizar la interfaz para realizar consultas o convertir el objeto CodeElement en un objeto CodeNamespace y utilizar después la propiedad Members.

La propiedad Children devuelve la colección de todos los objetos CodeElement2 relacionados a los que se pueda hacer referencia a través de este elemento de código.Por ejemplo, para un objeto CodeClass2, podría incluir los elementos de código de metadatos correspondientes a la clase y quizás también los declspecs de Visual C++, además de código contribuido basado en la característica de programación con atributos de Visual C++, parámetros de plantilla, etc.Un objeto CodeFunction2 podría incluir todos sus parámetros, los parámetros contribuidos basados en la característica de programación con atributos, etc.

La propiedad Children puede devolver Nothing o null dependiendo del objeto y del lenguaje.No es necesario que Visual Studio admita esto último.

Ejemplos

El siguiente ejemplo crea un nuevo espacio de nombres y atributo en la clase actual y muestra algunas de las propiedades del atributo.

Sub Children2Example(ByVal dte As DTE2)
    ' Before running this example, open a code page of a project
    ' and place the insertion point inside a namespace definition.
    Try
        ' Retrieve the CodeNamespace at the insertion point.
        Dim sel As TextSelection = _
            CType(dte.ActiveDocument.Selection, TextSelection)
        Dim spc As CodeNamespace = _
            CType(sel.ActivePoint.CodeElement( _
            vsCMElement.vsCMElementNamespace), CodeNamespace)

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

        MsgBox(spc.Name & " has the following child code elements:" & _
            vbCrLf & vbCrLf & children)
    Catch ex As Exception
        MsgBox(ex.Message)
    End Try

End Sub
public void Children2Example(DTE2 dte)
{
    // Before running this example, open a code document from a project
    // and place the insertion point inside a namespace definition.
    try
    {
        // Retrieve the CodeNamespace at the insertion point.
        TextSelection sel = 
            (TextSelection)dte.ActiveDocument.Selection;
        CodeNamespace spc = 
            (CodeNamespace)sel.ActivePoint.get_CodeElement(
            vsCMElement.vsCMElementNamespace);

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

        MessageBox.Show(spc.Name + 
            " has the following child code elements:" + "\r\n\r\n" + 
            children);
    }
    catch (Exception ex)
    {
        MessageBox.Show(ex.Message);
    }
}

Seguridad de .NET Framework

Vea también

Referencia

CodeAttribute2 Interfaz

Children (Sobrecarga)

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