Compartir a través de


CodeVariable.InitExpression (Propiedad)

Establece u obtiene un objeto que define el código de inicialización de un elemento.

Espacio de nombres:  EnvDTE
Ensamblado:  EnvDTE (en EnvDTE.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.

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 la propiedad insertará la sintaxis necesaria (como 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 esta propiedad 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. Los lenguajes no son necesarios para comprobar 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 contenido incorrecto.

Al establecer esta propiedad en CodeElement, el hecho de que se deba crear CodeElement o no depende 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

Vea también

Referencia

CodeVariable Interfaz

EnvDTE (Espacio de nombres)

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)

Detectar código utilizando el modelo de código (Visual C#)