WPF で UI イベントを ViewModel コマンドにバインドする
MVVM パターンに従うようにアプリケーションをリファクタリングする場合、UI イベント処理を分離コードから ViewModel に移動することが重要になります。 MVVM を効果的に実装するには、UI イベントをコマンドにバインドする方法を理解することが重要です。
これを行うには、Windows.Interactivity 名前空間の EventTrigger クラスを InvokeCommandAction クラスと組み合わせて使用することを検討してください。以下に例を示します:
<code class="language-xml"><ListBox ...> <i:Interaction.Triggers> <i:EventTrigger EventName="SelectionChanged"> <i:InvokeCommandAction Command="{Binding SelectedItemChangedCommand}" /> </i:EventTrigger> </i:Interaction.Triggers> </ListBox></code>
このメソッドを使用すると、SelectionChanged イベントを ViewModel で定義されたコマンドに直接バインドできます。プロジェクトで System.Windows.Interactivity を参照することで、EventTrigger クラスと InvokeCommandAction クラスを使用できます。
"xmlns:i="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity"
を使用して適切な名前空間を設定してください。このテクノロジーを使用すると、UI イベントを ViewModel コマンドにシームレスにバインドできるため、関心事の分離が強化され、MVVM アーキテクチャ パターンに従うことができます。
以上がWPF UI イベントを ViewModel コマンドにバインドするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。