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)
Значение свойства
Тип: 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
- Полное доверие для непосредственно вызывающего метода. Этот член не может быть использован частично доверенным кодом. Для получения дополнительной информации см. Использование библиотек из не вполне надежного кода.
См. также
Ссылки
Другие ресурсы
Практическое руководство. Компиляция и выполнение примеров кода модели объектов автоматизации
Практическое руководство. Поиск кода при помощи модели кода (Visual Basic)
Практическое руководство. Поиск кода при помощи модели кода (Visual C#)