Condividi tramite


Proprietà CodeAttribute2.Children

Ottiene un insieme di oggetti contenuti nel costrutto di codice.

Spazio dei nomi:  EnvDTE80
Assembly:  EnvDTE80 (in EnvDTE80.dll)

Sintassi

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

Valore proprietà

Tipo: EnvDTE.CodeElements
Restituisce un insieme CodeElements.

Implementa

CodeAttribute.Children

Note

Se un oggetto non dispone di elementi figlio, verrà restituito Nothing o nullriferimento null (Nothing in Visual Basic).

La proprietà è utilizzata principalmente in Visual C++. La proprietà Children restituisce tutti gli oggetti restituibili da un elemento di codice. Una classe, ad esempio, restituisce membri, basi, interfacce implementate, attributi, commenti e così via.

Per scorrere i membri di uno spazio dei nomi o di un tipo, vale a dire classe, struct, interfaccia e così via, è necessario eseguire il QI (Query Interface) o il cast dell'oggetto CodeElement a un oggetto CodeNamespace, quindi utilizzare la proprietà Members.

La proprietà Children restituisce l'insieme di tutti gli oggetti CodeElement2 correlati a cui è possibile fare riferimento mediante l'elemento di codice. Nel caso di un oggetto CodeClass2, ad esempio, possono essere inclusi gli elementi di codice dei metadati per la classe ed eventualmente le declspec di Visual C++, nonché il codice fornito in base alla funzionalità di programmazione con attributi di Visual C++, i parametri dei modelli e così via. Un oggetto CodeFunction2 può includere tutti i relativi parametri, i parametri forniti in base alla funzionalità di programmazione con attributi e così via.

La proprietà Children può restituire Nothing o null a seconda dell'oggetto e del linguaggio. In Visual Studio non è previsto un requisito per il supporto.

Esempi

Nell'esempio riportato di seguito vengono creati uno spazio dei nomi e un attributo nuovi nella classe corrente e vengono elencate alcune proprietà dell'attributo.

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

Sicurezza di .NET Framework

Vedere anche

Riferimenti

CodeAttribute2 Interfaccia

Overload Children

Spazio dei nomi EnvDTE80

Altre risorse

Procedura: compilare ed eseguire gli esempi di codice del modello a oggetti di automazione

Individuazione di codice mediante il modello di codice (Visual Basic)

Individuazione di codice mediante il modello di codice (Visual C#)