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


CodeVariable.InitExpression - свойство

Получает или возвращает объект, который определяет код инициализации элемента.

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

Синтаксис

'Декларация
Property InitExpression As Object
Object InitExpression { get; set; }
property Object^ InitExpression {
    Object^ get ();
    void set (Object^ value);
}
abstract InitExpression : Object with get, set
function get InitExpression () : Object
function set InitExpression (value : Object)

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

Тип: System.Object
Объект, определяющий выражение для инициализации переменной в коде.

Заметки

Значение объекта выражения должно быть строкой или CodeElement.При присваивании этого значения строке реализация этого свойства вставляет любой требуемый синтаксис, такой как знаки равенства или точки с запятыми, если переменная еще не имеет инициализирующего выражения.

Задание этого свойства может завершиться неудачей в зависимости от языков и синтаксических и семантических проверок, выполняемых в этом языке для передаваемых строк.Языку не требуется проверять строку, а поскольку строка по необходимости зависит от языка, задание этого свойства может дать неопределенный результат, если содержимое строки некорректно.

При присваивании CodeElement свойству, решение о том, следует ли вновь создать данный CodeElement, зависит от языковой реализации модели кода.В некоторых языках может реализовываться копирование семантики в случае передачи CodeElement, уже содержащегося в файле ресурсов.

ПримечаниеПримечание

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

Примеры

Sub InitExpressionExample(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 and initialize a new member variable.
        Dim byt As CodeVariable = _
            cls.AddVariable("var1", vsCMTypeRef.vsCMTypeRefByte)
        byt.InitExpression = "255"
    Catch ex As Exception
        MsgBox(ex.Message)
    End Try

End Sub
public void InitExpressionExample(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 and initialize a new member variable.
        CodeVariable byt = cls.AddVariable("var1", 
            vsCMTypeRef.vsCMTypeRefByte, -1, 
            vsCMAccess.vsCMAccessPublic, null);
        byt.InitExpression = "255";
    }
    catch (Exception ex)
    {
        MessageBox.Show(ex.Message);
    }
}

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

См. также

Ссылки

CodeVariable Интерфейс

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

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

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

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

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