Wie Feuer einen Befehl bei Doppelklick auf listbox-Element mit MVVM?

Ich versuche zu starten, wird ein ICommand, wenn der Benutzer einen Doppelklick auf eine listbox-Element. Auch ich bin versucht, dies zu tun mit dem MVVM-Muster.

In dieser XAML-Code, die Taste "p" funktioniert tadellos. Wenn ich Doppelklick auf das Listenfeld den Befehl nie beginnt. Ich habe einen Haltepunkt, um zu bestätigen "PlayVideoCommand" ist nicht " mit einem Doppelklick. Bin ich etwas fehlt, oder muss ich von der Verwendung von Setter (die ich nicht kenne)?

<ListBox Name="SmallVideoPreviews" Grid.Column="1" MaxHeight="965"
    ItemsSource="{Binding BrowseVideos}" 
    ItemTemplate="{StaticResource BrowseTemplate}">
    <ListBox.InputBindings>
        <KeyBinding Key="p" 
            Command="{Binding PlayVideoCommand}"
            CommandParameter="{Binding ElementName=SmallVideoPreviews, Path=SelectedItem}"/>
        <MouseBinding Gesture="LeftDoubleClick"
            Command="{Binding PlayVideoCommand}"
            CommandParameter="{Binding ElementName=SmallVideoPreviews, Path=SelectedItem}"/>
    </ListBox.InputBindings>
</ListBox>

Beide Doppel-klicken und "p" führen Sie den gleichen Befehl. Wenn du mit der Maus kann ich sehen, das listboxitem ausgewählt ist. Ich habe eine Ahnung, dass der MouseBinding Command-Eigenschaft ist nicht eine Abhängigkeitseigenschaft, aber ich weiß nicht, wie dies zu bestätigen.

InformationsquelleAutor James | 2012-06-23
Schreibe einen Kommentar