次の方法で共有


Expression2.DataMembers プロパティ

式がクラスまたは構造体を表している場合、このプロパティは Expressions コレクションとしてメンバー変数のリストを取得します。

名前空間:  EnvDTE100
アセンブリ:  EnvDTE100 (EnvDTE100.dll 内)

構文

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

プロパティ値

型 : EnvDTE.Expressions
Expressions コレクションを返します。

解説

式の全般情報については、「デバッガー内の式」を参照してください。

DataMembers プロパティを使用する方法を次の例に示します。

このプロパティをテストするには

  1. ターゲット アプリケーションはクラス A を含む必要があります。Main 関数は、クラス A のインスタンスを "a" という名前で作成する必要があります。

  2. クラス A のインスタンスが作成され、そのメンバー変数が初期化された後に、Main 関数にブレークポイントを設定します。

  3. ターゲット アプリケーションをデバッグ モードで実行します。

  4. ブレークポイントでアプリケーションが停止したら、アドインを実行します。

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 セキュリティ

  • 直前の呼び出し元に対する完全な信頼。このメンバーは、部分的に信頼されているコードから使用することはできません。詳細については、「部分信頼コードからのライブラリの使用」を参照してください。

参照

関連項目

Expression2 インターフェイス

DataMembers オーバーロード

EnvDTE100 名前空間