問題タブ [commandbinding]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
85 参照

wpf - これらのイベントはいつ発生し、どのように関連していますか? 「CommandManager.CanExecute と CommandBinding の CanExecute

これらのイベントはいつ発生し、どのように関連していますか? 「CommandManager.CanExecute と CommandBinding の CanExecute ???

0 投票する
1 に答える
227 参照

wpf - CommandBinding.previewcanexecute イベントのトンネリングの使用は何ですか??

CommandBinding.previewcanexecute イベントのトンネリングの使用は何ですか?

CommandBinding.canexecute イベントのバブリング ?? どのように役立ちますか

0 投票する
1 に答える
1064 参照

wpf - WPF コピー ボタンの問題

アプリケーションにコピーペーストボタンがあります。最初は両方のボタンを無効にする必要があります。任意のテキスト ボックスから任意のテキストを選択した場合は、コピー ボタンのみを有効にする必要があります。何かをコピーしたら、[貼り付け] ボタンを有効にする必要があります。App.xaml.cs ファイルでこのコードを使用します。

私の質問は、いつこのボタンを有効にする必要があるか、テキストを選択したかどうかを CanCmdCopy 関数で調べる方法ですか?

ありがとう

ディー

0 投票する
1 に答える
2478 参照

wpf - MVVM を壊さずにコマンドを xamdatagrid cellactivated イベントに追加する方法

XamDataGrid を使用してデータを表示しています。ここで、各列に異なるコマンドを追加したいと思います。

グリッド全体で CellActivated イベントを使用してから ActiveCell にバインドすると、Viewmodel が View について認識し、Ac​​tiveCell によって返されたオブジェクトから Column を評価する方法を知る必要があるため、機能しません。

どのコマンドを呼び出す必要があるかを XamDataGrid に伝える方法を探しています。

私は次のようなものを想像します:

コマンドがビューモデルまたはデータアイテムのプロパティである必要があるかどうかは気にしません。

これを実装するにはどうすればよいですか?

ありがとうございました

0 投票する
1 に答える
157 参照

c# - CommandBinding相対パス

ウィンドウ内(たとえばMyCanvas)に新しいコマンド定義があり、それをウィンドウにバインドします。通常、CanExecuteおよびExecutedのハンドラーは。内に直接ありますMyCanvasCanExecuteしかし、たとえば、ハンドラーとExecutedハンドラーを相対パスにバインドすることはどういうわけか可能MyCanvas.Logic.CanExecute_OpenCameraですか?

これは私の現在のXAMLです。

これが私が定義しようとしていることです。ロジックはMyCanvasの公有財産です。

0 投票する
1 に答える
4226 参照

wpf - WPF CommandBinding が機能しない

WPFウィンドウにボタンがあります。マウスの左クリックと Ctrl+F の両方を押してメッセージを表示したい。XAML でほとんどのコードが必要です。コードは以下の通りです。私の問題は、マウスのクリックは機能しますが、キーを押すことはできないことです。誰でも私を助けてください。前もって感謝します。

0 投票する
6 に答える
60011 参照

c# - WPF でコマンドをバインドする方法

複雑な方法を何度も使いすぎて、タスクを実行する最も簡単な方法を忘れてしまうこともありました。

コマンドバインディングの方法は知っていますが、常に同じアプローチを使用しています。

ICommand インターフェイスを実装するクラスを作成し、ビュー モデルからそのクラスの新しいインスタンスを作成すると、バインディングが魅力的に機能します。

これは、コマンドバインディングに使用したコードです

しかし、これを行うための基本的な方法を知りたいです。サードパーティのdllはなく、新しいクラスは作成されません。単一のクラスを使用して、この単純なコマンド バインディングを実行します。実際のクラスは ICommand インターフェイスから実装し、作業を行います。

0 投票する
3 に答える
702 参照

c# - コマンドバインディングがコンテキスト依存メニューで機能しませんか?

ツリービューを含むユーザーコントロール(例:UserCtrlClass)があります

ツリービューでの実際のアイテム/データ表示を表すためのビューモデル(例:OBJViewModel)クラスがあります

次に、OBJViewModelオブジェクトのリストを持つツリービューモデル(例:TreeViewModel)があります

これで、ユーザーコントロールのコードビハインドファイルで、ツリービューモデルクラスをインスタンス化し、ユーザーコントロールクラスのデータコンテキストとして設定しました。

ツリー内の特定のアイテムを右クリックしたときにのみ表示する必要があるコンテキスト依存のメニューが必要なので、ユーザーコントロールクラスの右クリックイベントを処理し、そこで作業を行いました

しかし、コマンドは機能していません。コマンドはIコマンドから派生し、TreeViewModelクラスでインスタンス化されます。Command.executeをデバッグしようとしましたが、ヒットしませんでした。私は.netとwpfの初心者なので、助けていただければ幸いです。

TreeViewModelクラス

クラスの背後にあるコード

}

TreeViewModelクラス

0 投票する
1 に答える
939 参照

xaml - MVVM、Xaml、コマンド バインディング、例外処理、メッセージ ボックス

現在、Windows Phone アプリを開発しています。私はMVVMとその利点についてかなり知っています。そのため、UI ロジックをビジネス ロジックから分離するように最善を尽くしています。しかし、私はこれに困惑しています。

ViewModel に Command があり、UI が xaml を介してこのコマンドにバインドされているとします。したがって、実行関数を呼び出すことはありません。このコマンドが実際に例外をスローできるとします。これをキャッチして通知を表示したい。頭に浮かんだのは次のことです。

  1. 何か問題が発生したときに通知できるように、インターフェイスをコマンドに渡します。このインターフェイスを実装するクラスは、メッセージ ボックスを表示するロジックを保持できます。これは正常に機能しますが、アプリのグローバリゼーション/ローカリゼーションが壊れます。エラー メッセージを AppResources.resx ファイルに保存して、既定の言語が変更されたときに適切なエラー メッセージが選択されるようにします。ビューモデルにあるコマンドに追加するとテストできないため、コマンドから AppResources を呼び出したくありません
  2. try catch を使用してコード ビハインドからコマンドを呼び出すと、例外に基づいて MessageBox を直接表示できます。

どちらのソリューションにもあまり満足していません。UI にバインドされているコマンドの例外を処理する良い方法はありますか? DispatchedUnhandledException を見ましたが、ドメイン固有になるのでしょうか? ユーザーに通知するために、すべての例外を 1 か所でキャッチする必要はありません。適切なビューでそれを処理したい。ありがとう!