Visual Studio拡張機能を作成し、拡張機能に関連するユーザーアクションのログを保持しています。ツールが行った変更の取り消し/やり直し情報をログに含めたいのですが、取り消し/やり直しが発生したときにイベントリスナーを呼び出して、取り消し/やり直しオブジェクトが私のツールが生成したアクションに対応するもの。
ITextUndoHistory
現在、現在のを取得するためのコードがあります。これは、この回答に従って生成IWpfTextView
したものを使用して取得します。残念ながら、私が取得したオブジェクトは、役立つ機能を十分に実装していません。具体的には、そのイベントが呼び出されますが、常に。のトランザクションがあります。また、その/プロパティはスローします。動作するのは、トランザクションオブジェクトを取得し、Visual Studioの元に戻す/やり直しリストに表示されるアクションの名前を設定できるようにすることだけですが、動作する必要はありません。ITextUndoHistoryRegistry
ITextUndoHistory
UndoRedoHappened
null
UndoStack
RedoStack
System.NotSupportedException
CreateTransaction
Visual Studioで元に戻る情報にアクセスする他の方法はありますか?それとも、私がアクセスできるものを使ったもっとクリエイティブなハックですか?