Поделиться через


CodeClass2.Children - свойство

Получает коллекцию объектов, содержащихся в данном классе кода.

Пространство имен:  EnvDTE80
Сборка:  EnvDTE80 (в EnvDTE80.dll)

Синтаксис

'Декларация
ReadOnly Property Children As CodeElements
    Get
CodeElements Children { get; }
property CodeElements^ Children {
    CodeElements^ get ();
}
abstract Children : CodeElements
function get Children () : CodeElements

Значение свойства

Тип: EnvDTE.CodeElements
Коллекция CodeElements.

Реализации

CodeClass.Children

Заметки

Если у класса кода нет дочерних объектов, то возвращается значение Nothing или nullпустая ссылка (Nothing в Visual Basic).

Это свойство главным образом применяется в Visual C++. Свойство Children возвращает каждый объект, возвращаемый из элемента кода. Например, для класса возвращаются члены, базовые типы, реализованные интерфейсы, атрибуты, комментарии и т.д.

Для итерации членов пространства имен или типа (класса, структуры, интерфейса и т. д.) необходимо использовать интерфейс запроса или привести тип CodeElement к типу CodeNamespace и затем использовать свойство Members.

Children возвращает коллекцию всех связанных объектов CodeElement, к которым можно обращаться через класс кода. Например, к таким объектам могут относиться элементы кода метаданных для класса и, возможно, спецификации объявлений Visual C++, а также код, созданный с использованием технологии атрибутивного программирования Visual C++, параметры шаблонов и пр.

Свойство Children может иметь значение Nothing в зависимости от объекта и языка. Поддержка этого поведения в Visual Studio не является обязательной.

Примечание

Значения элементов модели кода, таких как классы, структуры, функции, атрибуты, делегаты и т.п., после внесения некоторых изменений могут стать недетерминированными, иными словами, нельзя рассчитывать, что их значения не будут изменяться.Дополнительные сведения см. в разделе "Значения элементов модели кода могут изменяться" в разделе Практическое руководство. Поиск кода при помощи модели кода (Visual Basic).

Примеры

[Visual Basic]

Sub ChildrenExample(ByVal dte As DTE2)
    ' 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.
        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

[C#]

public void ChildrenExample(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);
    }
}

Безопасность платформы .NET Framework

См. также

Ссылки

CodeClass2 Интерфейс

Children - перегрузка

EnvDTE80 - пространство имен

Другие ресурсы

Практическое руководство. Компиляция и выполнение примеров кода модели объектов автоматизации

Практическое руководство. Поиск кода при помощи модели кода (Visual Basic)

Практическое руководство. Поиск кода при помощи модели кода (Visual C#)