0

WPF で記述された VS2010 へのアドインがあります。私の WPF アプリは、いくつかの基本的なショートカットを処理します。以前は、私の WPF はスタンドアロン アプリであり、ショートカット (Ctr+c、Ctrl、v) を使用していくつかの基本的なコマンド (シラミのコピー、貼り付けなど) を処理していました。

私のアプリがVS内に組み込まれたので、VSがそれらを処理してブロックするため、これらのキーを取得できません。私は Keyboard イベントにフックしようとしましたが、多くのことがわかりました。それは汚い方法です。

VSがショートカットを処理したい方法はありますか、少なくとも私のアプリは最初にイベントを処理する機会がありますか?

そうする正しい方法は何ですか?

ありがとう、レオン

4

1 に答える 1

1

Visual Studio コマンドを使用する必要があります。Visual Studio には独自のキー バインドがあるため、ユーザーの設定によっては、Copy が Ctrl-C にマップされない場合があります。

IOleCommandTargetおよびVsStd2kコマンド セットを見てください。アドインの追加方法によっては、ある時点でIOleCommandTarget、パッケージ内の実装への呼び出しを受け取ります。メソッドへの呼び出しを受け取るには、Execute最初にコマンドを処理することを IDE に伝える必要があります (そのためには、QueryStatusVS を実装して、コマンドが処理されるのに有効であることを通知する必要があります)。コピー コマンドはGUID_VSStandardCommandSet97コマンド グループにあります。

于 2013-01-30T08:36:55.043 に答える