0

MVVMパターンを使用したアプリケーションがあります。CommandReferenceクラスとDelegateCommandクラスを使用して実装されたコマンドがいくつかあります。Thayは、MainWindowInputBindingsでいくつかのホットキーにバインドされています。例:KeyBinding Key = "W" Command = "{StaticResource WireframeCommandReference}"

次に、いくつかのオブジェクトのプロパティを表示する[プロパティ]ウィンドウがあります。これらのプロパティの一部は「文字列」タイプであり、TextBoxに表示されて編集されます。そして、ここで私は問題を抱えました。TextBoxに「w」と入力しようとすると、何も入力されませんが、コマンドWireframeCommandが起動されます。私が欲しいのは、TextBoxがアクティブな場合はコマンドを起動せずにプロパティを編集できるようにすることです。それ以外の場合は、コマンドを起動することができます。何か助けはありますか?

4

1 に答える 1

0

どうもありがとう。決定は、コマンドをMainViewModelから対応するVMに移動することでした。ワイヤーフレームの場合は、ViewportVMに移動しましたが、すべて正常に機能します。私の問題は、MainViewModelがすべてのコマンドのグローバルストレージとして使用されていたことです。

于 2012-10-19T07:32:58.393 に答える