Répartiteur.CurrentDispatcher.BeginInvoke N'Est Pas En Invoquant

J'ai un FileSystemWatcher et les événements déclenchés par cette quand un a regardé les modifications de fichiers sont posées sur un thread différent du thread d'INTERFACE utilisateur. Afin d'éviter et de cross-thread accès volation de plaisir, j'essaie d'utiliser

public void RaisePathChanged(object sender, RenamedEventArgs e)
{
    Dispatcher.CurrentDispatcher.BeginInvoke(new Action(() => 
    {
        //Some code to handle the file state change here.
    }));
}

Cette compile bien et la RaisePathChanged est tiré comme il se doit. Toutefois, le code à l'intérieur du délégué Action(() => { /*Here*/}) n'est jamais appelé/invoquée, le code est simplement ignorée.

Pourquoi le code ignorés, comment puis-je résoudre ce problème et est-ce la meilleure façon de s'assurer de code est exécuté sur le thread qui a créé en WPF?

Merci pour votre temps.

OriginalL'auteur MoonKnight | 2013-11-22