CodeVariable2.InitExpression - свойство
Возвращает или задает объект, который определяет код инициализации элемента.
Пространство имен: EnvDTE80
Сборка: EnvDTE80 (в EnvDTE80.dll)
Синтаксис
'Декларация
Property InitExpression As Object
Get
Set
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. При присваивании этого значения строке реализация свойства InitExpression вставляет любые требуемые элементы синтаксиса, такие как знаки равенства или точки с запятыми, если переменная еще не имеет инициализирующего выражения.
Задание свойства InitExpression может завершиться неудачей в зависимости от языков и синтаксических и семантических проверок, выполняемых в этом языке для передаваемых строк. Языку не требуется проверять строку, а поскольку строка по необходимости зависит от языка, задание этого свойства может дать неопределенный результат, если содержимое строки некорректно.
При присваивании 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#)