Lier les événements de l'interface utilisateur aux commandes dans WPF ViewModel
Suite à l'architecture MVVM, le déplacement des événements d'interface utilisateur vers ViewModel est plus propice à la maintenance et à l'expansion du code. Cet article se concentrera sur la façon de transférer l'événement SelectionChanged de ListBox du fichier code-behind vers le ViewModel et utilisera l'extrait de code fourni comme exemple.
Pour ce faire, nous devons utiliser EventTrigger
avec InvokeCommandAction
(dans l'espace de noms System.Windows.Interactivity
) :
<code class="language-xml"><ListBox ...> <i:Interaction.Triggers> <i:EventTrigger EventName="SelectionChanged"> <i:InvokeCommandAction Command="{Binding SelectedItemChangedCommand}" /> </i:EventTrigger> </i:Interaction.Triggers> </ListBox></code>
xmlns:i="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity"
. Command
est liée à la commande définie dans le ViewModel. System.Windows.Interactivity
comme indiqué pour garantir une mise en œuvre réussie. Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!