CodeClass2.AddProperty(String, String, Object, Object, vsCMAccess, Object) Метод

Определение

Создает новую конструкцию свойства в классе.

EnvDTE::CodeProperty AddProperty(std::wstring const & GetterName, std::wstring const & PutterName, winrt::Windows::Foundation::IInspectable const & Type, winrt::Windows::Foundation::IInspectable const & Position, EnvDTE::vsCMAccess Access = EnvDTE.vsCMAccess.vsCMAccessDefault, winrt::Windows::Foundation::IInspectable const & Location);
[System.Runtime.InteropServices.DispId(66)]
public EnvDTE.CodeProperty AddProperty (string GetterName, string PutterName, object Type, object Position, EnvDTE.vsCMAccess Access = EnvDTE.vsCMAccess.vsCMAccessDefault, object Location);
[<System.Runtime.InteropServices.DispId(66)>]
abstract member AddProperty : string * string * obj * obj * EnvDTE.vsCMAccess * obj -> EnvDTE.CodeProperty
Public Function AddProperty (GetterName As String, PutterName As String, Type As Object, Optional Position As Object, Optional Access As vsCMAccess = EnvDTE.vsCMAccess.vsCMAccessDefault, Optional Location As Object) As CodeProperty

Параметры

GetterName
String

Обязательный. Имя функции, получающей значение свойства.

PutterName
String

Обязательный. Имя функции, задающей значение свойства.

Type
Object

Обязательный. Тип свойства. Это может быть объект CodeTypeRef, значение vsCMTypeRef или полное имя типа.

Position
Object

Необязательный параметр. По умолчанию равно 0. Элемент кода, после которого добавляется новый элемент.

Если значение имеет тип данных Long, то метод позиционирования указывает элемент, после которого добавляется новый элемент.

Поскольку в коллекциях нумерация элементов начинается с 1, значение 0 означает, что новый элемент следует поместить в начало коллекции. Значение -1 означает, что элемент следует поместить в конец.

Access
vsCMAccess

Необязательный параметр. Значение константы vsCMAccess, указывающее тип доступа.

Location
Object

Необязательный параметр. Местоположение новой функции.

Возвращаемое значение

CodeProperty

Объект CodeProperty.

Реализации

Атрибуты

Примеры

[Visual Basic]

Sub AddPropertyExample(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)  

        ' Create a new member property.  
        cls.AddProperty("TestProperty", "TestProperty", _  
            vsCMTypeRef.vsCMTypeRefInt)  
    Catch ex As Exception  
        MsgBox(ex.Message)  
    End Try  
End Sub  

[C#]

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

        // Create a new member property.  
        cls.AddProperty("TestProperty", "TestProperty",   
            vsCMTypeRef.vsCMTypeRefInt, -1,   
            vsCMAccess.vsCMAccessPublic, null);  
    }  
    catch (Exception ex)  
    {  
        MessageBox.Show(ex.Message);  
    }  
}  

Комментарии

Для полных имен типов в машинном коде Visual C++ в качестве разделителей необходимо использовать два двоеточия (::). Все остальные языки поддерживают формат с разделителем-точкой.

Правильность аргументов определяется языком, на котором наследуется модель кода.

Примечание

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

Применяется к