問題タブ [icommand]
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.
silverlight-4.0 - Silverlight ICommandをどのように実行しますか?
これはとても基本的な質問ですが、私は尋ねなければなりません。
SLには、次のXAMLがあります。
そして、このコードの背後にあります:
しかし、ボタンをクリックしても、コマンドのExecute()は起動されません。
それにはトリックがありますか?
wpf - MVVM でツールチップを使用してコマンドを実装するには?
ほとんどの MVVM フレームワークは、ViewModel の Execute メソッドと CanExecute メソッドを使用する基本的な Command パターン (PRISM の DelegateCommand など) を実装しています。
ただし、コマンドにツールチップを追加する必要があることがよくあります。たとえば、コマンドの目的を説明したり、コマンドが無効になっている理由を説明したりします。
現在、私のツールチップは独立していますが、これによりスタイル定義のコードが重複します。
ツールチップを MVVM コマンド パターンと統合する方法はありますか?
独自の Command クラスを作成する必要がありますか?それとも悪い習慣と見なされますか?
wpf - CanExecuteCommandでパフォーマンスに影響はありますか?
ICommandオブジェクトのCanExecuteCommandを使用することのパフォーマンスへの影響は何ですか。メソッドは何度も実行されますか?
コマンドにバインドされたボタンを有効にするかどうかを決定するために、約200個のオブジェクトのコレクションを反復処理する必要がありますか?CanExecuteCommandが繰り返し実行されるため、アプリケーションが遅くなりますか?
wpf - ViewModel で新しい ICommand オブジェクトを作成する
どちらの ICommand オブジェクトも ViewModel にバインドされています。
最初のアプローチはよく使われるようです。
しかし、2 番目のものはコードの行数を節約しますが、Binding が更新されるたびに新しい ICommand オブジェクトを作成しないので、リソースの無駄になりますか?!
wpf - WPF UserControl と ICommand
内部にボタンとボタンのスタイルを持つ UserControl を作成しました。このスタイルは、マウス オーバー トリガーのボタンの背景を設定します。ここで、タイプ ICommand の依存関係プロパティを追加し、ボタン コマンドをこの新しいプロパティに設定しました。コマンド バインディングは適切に機能しますが、カスタム コントロールが無効になっている場合 (canexecute = false)、マウス オーバー トリガーによって背景が変更されます。
マウスオーバートリガーを次のように変更しようとしましたが、機能しません:
誰でも助けることができますか?
c# - WPFは、CommandManager(CommandManager.InvalidateRequerySuggested)を使用して無効化するタイミングをどのように決定しますか?
私はRelayCommandをあちこちで使用してきましたが、不思議に思って知りたいと思いました... CommandManager.InvalidateRequerySuggested()
WPFによってgetが呼び出されるのはいつですか?
私の推測では、UI上の他のルーティングされたイベントがトリガーされるたびに、MVVMの世界では、主にOnPropertyChangedイベントが発生し、値が変更され、関連するroutedeventが実行されることを意味します。しかし、それは単なる推測であり、誰かがここで正確な内部の仕組みを知っているかどうか疑問に思っています。
wpf - コマンドへの WPF イベントの別の実装 (問題あり)
ICommand をコントロールのイベントにフックするさまざまな実装を検討しています。たとえば、TextBox の GotFocus は、View Model で GotFocusCommand を呼び出す必要があります。次に、(自分の学習のために) 自分のバージョンを実装するというアイデアを思いつきましたが、うまく機能していますが、XAML で 1 つのイベントを 1 つのコマンドにしかリンクできません。
(基本的には、リフレクションを使用して指定されたイベントを見つけてから、コマンドを実行する AddEventHandler を実行します)
これはうまくいきます:
しかし、これはしません:
属性名の重複エラーが発生します。
次のようなことは可能でしょうか:
複数のイベントをコマンドに「マップ」するには?
wpf - RelayCommand では、オブジェクトの送信者は常に null です
ボタンのクリックを処理するために RelayCommand を使用しています。送信者パラメーターを取得する必要がありますが、常に null です。なぜですか?
ViewModel.cs
View.xaml
ExpandClickCommand で現在の ListboxItem のインデックスを取得する必要があります
wpf - xaml からコマンド パラメーターを渡す
私はこのようなことをしようとします:
しかし、私は常にnullになりました(SelectedIndexとSelectedValueも試しました)
次のパラメーターを実行コードに渡すと、機能します。
c# - ICommand と InputBindings を DataGrid で一貫して使用する
次の機能を持つ DataGrid を作成しようとしています。
- 読み取り専用のデータグリッドですが、ダブルクリックと別の編集フォーム (特定の行をダブルクリック) による編集機能を提供します
- 新規/編集/削除フォームを呼び出す ContextMenu (DataGrid 全体を右クリック)
- 削除フォームを呼び出す削除キー (特定の選択行)
ICommand を使用するのは良い考えだと思ったので、次のような DataGrid を作成しました。
その後、行をダブルクリックしても機能しないことに気付いたので、これを追加しました。
そしてもちろん、削除キーも機能していません。これを追加しました:
なぜ私はそれをしなければならないのですか?この種のイベントでのハッキングを防ぐためのコマンドを用意することの要点ではありませんか? 私は何かが恋しいですか?
私のシンプルで完璧な世界では、コマンドを処理するのが適切かどうかを CanExecute メソッドで判断し、さまざまなイベント ハンドラーにサブスクライブしないようにしたいと考えています。