Comment gérer le Curseur.Événement ValueChanged dans un modèle de vue?

J'ai un PlayerV.xaml Vue avec un Curseur à l'intérieur:

<Slider Value="{Binding CurrentProgress}"/>

et disposent d'un bouton:

<Button Content="next song" Command="{Binding playNext}"/>

Bouton fonctionne correct. Bouton de playNext commande est contenue dans PlayerVM.cs

Je veux du curseur de ValueChanged pour appeler une fonction qui est stocké dans PlayerVM.cs:

[1]:<Slider Value="{Binding CurrentProgress}" ValueChanged="{Binding playNext}"/>

Je sais [1] a une syntaxe incorrecte, je l'ai utilisé pour des raisons de clarté de l'explication.

====Explication Complémentaire====

Je sais que je peux écrire:

<Slider ValueChanged="Slider_ValueChanged" Value="{Binding CurrentProgress}" />

Et dans PlayerV.xaml.cs il y aura

public partial class MainWindow : Window
{
    public MainWindow()
    {
        InitializeComponent();
    }
    private void Slider_ValueChanged(object sender, RoutedPropertyChangedEventArgs<double> e)
    {
        //some logic (actions) 
    }    
}

Mais je ne veux pas de logique là-dedans. Je veux qu'il soit dans PlayerVM.cs (comme le bouton de commande des fonctions de gestionnaire).
Comment faire?
Aussi dans mon Application.xaml.cs de démarrage de la fonction est:

private void OnStartup(object sender, StartupEventArgs e)
{
    MainWindow _mainWindow = new MainWindow();
    PlayerVM playerVM = new PlayerVM();
    _mainWindow.DataContext = playerVM;
    _mainWindow.Show();
 }
Que vous tenu de la valeur de curseur pour CurrentProgress prop de votre VM, que chaque fois que vous faites glisser à l'aide de votre curseur, il change aussi. Donc il suffit d'appeler la methode de commande yuou besoin de le setter de CurrentProgress prop. Assurez-vous que vous avez liaison Bidirectionnelle mode <Curseur Value="{Binding CurrentProgress, Mode=TwoWay}" />
Je pense que je suis en train de faire quelque chose de mal. Dans PlayerVM, j'ai un fil (timer tick) qui définit CurrentProgress valeur en fonction de lecteur multimédia.Position. Mais je voulais quand l'utilisateur change la position du curseur -> la position du joueur doivent être passés conformément. Comment puis-je savoir que les Curseurs de valeur a été modifiée par l'utilisateur, et non pas par timer_ticks fonction?
le plus trivial chemin - votre ticker a fixé intrval que les changements de progrès, dans votre setter juste de comparer l'ancienne et la nouvelle valeur, et selon le résultat, faire un choix
J'ai eu une idée pour utiliser ce moyen trivial. Mais, comme il s'est avéré, ma formule précédente était incorrect, et j'ai pensé que ce n'est pas une solution. Maintenant, je formule améliorée et cela fonctionne! Merci, @Den.

OriginalL'auteur bart | 2014-08-05