UI-Ereignisse an Befehle in WPF ViewModel binden
Nach der MVVM-Architektur ist das Verschieben von UI-Ereignissen nach ViewModel der Codewartung und -erweiterung förderlicher. Dieser Artikel konzentriert sich auf die Übertragung des SelectionChanged-Ereignisses der ListBox aus der Code-Behind-Datei auf das ViewModel und verwendet den bereitgestellten Codeausschnitt als Beispiel.
Dazu müssen wir EventTrigger
zusammen mit InvokeCommandAction
(im System.Windows.Interactivity
-Namespace) verwenden:
<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
ist an den im ViewModel definierten Befehl gebunden. System.Windows.Interactivity
-Namespace zu verweisen, um eine erfolgreiche Implementierung sicherzustellen. Das obige ist der detaillierte Inhalt vonWie binde ich WPF ListBox SelectionChanged-Ereignisse an ViewModel-Befehle?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!