Freigeben über


CodeVariable.InitExpression-Eigenschaft

Legt ein Objekt fest oder ruft ein Objekt ab, durch das der Initialisierungscode für ein Element definiert wird.

Namespace:  EnvDTE
Assembly:  EnvDTE (in EnvDTE.dll)

Syntax

'Declaration
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)

Eigenschaftswert

Typ: Object
Ein Objekt, das den Initialisierungsausdruck für die Codevariable definiert.

Hinweise

Der Wert muss eine Zeichenfolge oder ein CodeElement für ein Ausdrucksobjekt sein. Wenn hier eine Zeichenfolge festgelegt wird, fügt die Implementierung der Eigenschaft ggf. erforderliche Syntax ein, z. B. Gleichheitszeichen oder Semikolons, sofern die Variable nicht bereits über einen Initialisierungsausdruck verfügt.

Abhängig von den Programmiersprachen und den Syntax- oder Semantikprüfungen, die für die übergebene Zeichenfolge ausgeführt werden, kann das Festlegen dieser Eigenschaft fehlschlagen. Programmiersprachen müssen die Zeichenfolge nicht prüfen. Da diese jedoch immer sprachspezifisch ist, kann das Festlegen der Eigenschaft ein nicht definiertes Verhalten zur Folge haben, wenn der Inhalt der Zeichenfolge nicht korrekt formatiert wurde.

Wenn die Eigenschaft auf ein CodeElement festgelegt wird, hängt es von der Sprachimplementierung des Codemodells ab, ob das CodeElement neu erstellt werden muss. Einige Sprachen implementieren möglicherweise das Kopieren von Semantik, wenn Sie ein bereits in einer Quelldatei vorhandenes CodeElement übergeben.

Hinweis

Die Werte von Codemodellelementen wie Klassen, Strukturen, Funktionen, Attributen, Delegaten usw. können nach bestimmten Bearbeitungsvorgängen nicht deterministisch sein, d. h., dass nicht mehr davon ausgegangen werden kann, dass ihre Werte immer unverändert bleiben.Weitere Informationen finden Sie im Abschnitt zum Änderungsverhalten von Codemodellelementwerten unter Ermitteln von Code über das Codemodell (Visual Basic).

Beispiele

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-Sicherheit

Siehe auch

Referenz

CodeVariable Schnittstelle

EnvDTE-Namespace

Weitere Ressourcen

Gewusst wie: Kompilieren und Ausführen der Codebeispiele für das Automatisierungsobjektmodell

Ermitteln von Code über das Codemodell (Visual Basic)

Ermitteln von Code über das Codemodell (Visual C#)