Iは、C#コード行有し仮に:EnvDTE.Expression DataMembersの内部名を取得プログラム
するvarます。myList =新しいリスト{1,2,3}。
ウォッチウィンドウに「myList」を置き、リストの最初の項目をドラッグすると、このデータメンバーの内部名を持つウォッチウィンドウが作成されます。この場合、
プログラムでEnvDTEの表現のデータメンバーからこの内部名を取得する方法は(新しいSystem.Collections.Generic.Mscorlib_CollectionDebugView(はmyList))。アイテム[0]
私の質問は、ありますか?
ありがとうございます!
私は元の投稿でこれを述べていたはずですが、私はすでにそれを知っています。いくつかのリバースエンジニアリングとデバッガの属性の検査を行い、Expression Evaluatorが何をしているのか把握することができますが、Visual StudioのExtensibility APIからこの文字列を直接取得する方法があれば尋ねられます。 –
私はそれを正確に行う機能はありません。私は現時点でこのAPIを使って作業していますが、何かがあれば気づいたと思います。 – detunized
コメントのおかげで、EnvDTEのExpressionオブジェクト、またはIDebugProperty2 :: GetPropertyInfoを使用していますか?私は、後者が解決策をもたらすかもしれないと思うが、そのオブジェクトをどうやって得るのか分からない。 –