Freigeben über


Expression2.DataMembers-Eigenschaft

Wenn der Ausdruck eine Klasse oder Struktur darstellt, ruft diese Eigenschaft eine Liste von Membervariablen als Expressions-Auflistung ab.

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

Syntax

'Declaration
ReadOnly Property DataMembers As Expressions
Expressions DataMembers { get; }
property Expressions^ DataMembers {
    Expressions^ get ();
}
abstract DataMembers : Expressions with get
function get DataMembers () : Expressions

Eigenschaftswert

Typ: Expressions
Eine Expressions-Auflistung.

Hinweise

Allgemeine Informationen über Ausdrücke finden Sie unter Ausdrücke im Debugger.

Beispiele

Im folgenden Beispiel wird veranschaulicht, wie die DataMembers-Eigenschaft verwendet wird.

So testen Sie diese Eigenschaft

  1. Die Zielanwendung muss eine Klasse A enthalten. Die Main-Funktion muss eine Instanz einer Klasse A mit dem Namen "a" erstellen.

  2. Legen Sie in der Main-Funktion einen Haltepunkt fest, nachdem eine Instanz der Klasse A erstellt und die zugehörigen Membervariablen initialisiert wurden.

  3. Führen Sie die Zielanwendung im Debugmodus aus.

  4. Führen Sie das Add-In aus, wenn die Anwendung am Haltepunkt hält.

public static void DataMembers(DTE dte)
{
    // Setup debug Output window.
    Window w = (Window)dte.Windows.Item(EnvDTE.Constants.vsWindowKindOutput);
    w.Visible = true;
    OutputWindow ow = (OutputWindow)w.Object;
    OutputWindowPane owp = ow.OutputWindowPanes.Add("DataMembers Property Test");
    owp.Activate();

    // "a" is an instance of class A.
    EnvDTE100.Expression2 exp1 = dte.Debugger.GetExpression("a", true, 1);
    EnvDTE.Expressions exps = exp1.DataMembers;
    foreach(EnvDTE100.Expression2 exp in exps)
        owp.OutputString(exp.Name + "\n");
}
Shared Sub DataMembers(ByRef dte As EnvDTE.DTE)
    Dim exp As EnvDTE100.Expression2 = dte.Debugger.GetExpression("a", True, 1)
    Dim exps As EnvDTE.Expressions = exp.DataMembers
    Dim str As String = vbCrLf
    For Each exp In exps
        str += vbCrLf + vbTab + exp.Name
    Next
    MessageBox.Show("List of class A data members: " + _
                    str, "Expression Test - Data Members Property")
End Sub

.NET Framework-Sicherheit

Siehe auch

Referenz

Expression2 Schnittstelle

EnvDTE100-Namespace