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


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

Получает коллекцию объектов, производных от класса кода. Не реализовано в Visual С#.

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

Синтаксис

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

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

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

Реализации

CodeClass.DerivedTypes

Заметки

Свойство DerivedTypes возвращает коллекцию CodeElements типов, полученных из класса кодов. Коллекция DerivedTypes возвращает только типы, которые являются производными из классов кода в рамках одного проекта, а не в других проектах или языках. Если элемент кода является интерфейсом vsCMElementInterface, то возвращаемая коллекция также содержит объекты CodeClass, реализующие данный интерфейс.

Примечание

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

Примеры

[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

См. также

Ссылки

CodeClass2 Интерфейс

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

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

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

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

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

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