CodeClass2.Bases Свойство
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Получает коллекцию классов, которую наследует этот класс кода.
public:
property EnvDTE::CodeElements ^ Bases { EnvDTE::CodeElements ^ get(); };
[System.Runtime.InteropServices.DispId(33)]
public EnvDTE.CodeElements Bases { [System.Runtime.InteropServices.DispId(33)] [System.Runtime.InteropServices.TypeLibFunc(1024)] get; }
[<System.Runtime.InteropServices.DispId(33)>]
[<get: System.Runtime.InteropServices.DispId(33)>]
[<get: System.Runtime.InteropServices.TypeLibFunc(1024)>]
member this.Bases : EnvDTE.CodeElements
Public ReadOnly Property Bases As CodeElements
Значение свойства
Коллекция CodeElements.
Реализации
- Атрибуты
Примеры
[Visual Basic]
Sub BasesExample(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 CodeClass2 = _
CType(sel.ActivePoint.CodeElement( _
vsCMElement.vsCMElementClass), CodeClass2)
' Enumerate the CodeClass's bases.
Dim bases As String = ""
Dim elem As CodeElement2
For Each elem In cls.Bases
bases &= elem.FullName & vbCrLf
Next
MsgBox(cls.Name & " has the following bases:" & _
vbCrLf & vbCrLf & bases)
Catch ex As System.Exception
MsgBox(ex.Message)
End Try
End Sub
[C#]
public void BasesExample(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;
CodeClass2 cls =
(CodeClass)sel.ActivePoint.get_CodeElement2(
vsCMElement.vsCMElementClass);
// Enumerate the CodeClass's bases.
string bases = "";
foreach (CodeElement2 elem in cls.Bases)
{
bases += elem.FullName + Environment.NewLine;
}
MessageBox.Show(cls.Name + " has the following bases:" +
Environment.NewLine + Environment.NewLine + bases);
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
Комментарии
Базовые типы являются суперклассами CodeElements . Для Visual Basic и Visual C# всегда существует только один элемент в коллекции, за исключением случаев, когда тип кода — CodeInterface или CodeInterface2 .
Примечание
Значения элементов модели кода, таких как классы, структуры, функции, атрибуты, делегаты и другие, после внесения некоторых изменений могут оказаться недетерминированными, другими словами, нельзя рассчитывать, что их значения будут всегда оставаться одинаковыми. Дополнительные сведения см. в разделе значения элементов модели кода могут изменяться при обнаружении кода с помощью модели кода (Visual Basic).