CodeVariable2.InitExpression (Propiedad)
Obtiene o establece un objeto que define el código de inicialización de un elemento.
Espacio de nombres: EnvDTE80
Ensamblado: EnvDTE80 (en EnvDTE80.dll)
Sintaxis
'Declaración
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)
Valor de propiedad
Tipo: System.Object
Un objeto que define la expresión de inicialización correspondiente a la variable de código.
Implementaciones
Comentarios
El valor debe ser una cadena o un CodeElement para un objeto de expresión. Cuando este valor se establece en una cadena, la implementación de InitExpression insertará la sintaxis necesaria (signos de igual o signos de punto y coma), siempre que la variable no contenga ya una expresión de inicialización.
El establecimiento de InitExpression puede producir errores, dependiendo de los lenguajes y de cualquier comprobación sintáctica o semántica realizada en la cadena que se ha pasado. No es necesario que los lenguajes comprueben la cadena y, puesto que la cadena depende, por definición, del lenguaje, el establecimiento de esta propiedad puede dar lugar a un comportamiento indefinido si la cadena incluye cualquier tipo de contenido incorrecto.
Cuando esta propiedad se establezca en un CodeElement, el hecho de que dicho CodeElement deba estar recién creado o no dependerá de la implementación del lenguaje del modelo de código. Algunos lenguajes pueden implementar semántica de copia si se les pasa un CodeElement que ya se encuentra en un archivo de código fuente.
Nota
Los valores de los elementos de modelo de código como clases, structs, funciones, atributos, delegados, etc., pueden ser no deterministas una vez realizados determinados tipos de modificaciones; esto significa que no se puede confiar en que sus valores se mantengan siempre igual. Para obtener más información, vea la sección Los valores de elementos de modelo de código pueden cambiar, en Detectar código utilizando el modelo de código (Visual Basic).
Ejemplos
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);
}
}
Seguridad de .NET Framework
- Plena confianza para el llamador inmediato. Un código de confianza parcial no puede utilizar este miembro. Para obtener más información, vea Utilizar bibliotecas de código que no es de plena confianza.
Vea también
Referencia
Otros recursos
Cómo: Compilar y ejecutar los ejemplos de código del modelo de objetos de automatización
Detectar código utilizando el modelo de código (Visual Basic)