2009-12-02 6 views

Répondre

8
public static class ExtensionMethods 
{ 

    private static Action EmptyDelegate = delegate() { }; 


    public static void Refresh(this UIElement uiElement) 
    { 
     uiElement.Dispatcher.Invoke(DispatcherPriority.Render, EmptyDelegate); 
    } 
} 

private void LoopingMethod() 
{ 
    for (int i = 0; i < 10; i++) 
    { 
     label1.Content = i.ToString(); 
     label1.Refresh(); 
     Thread.Sleep(500); 
    } 
} 

Référence: http://geekswithblogs.net/NewThingsILearned/archive/2008/08/25/refresh--update-wpf-controls.aspx

+0

Une très bonne trouvaille - merci! – Buck

4

Peut-être que vous devriez en savoir plus sur le sujet de Bindings ..

Basiquement, les liaisons géreront pour vous ..

+0

Je suppose que ce n'est pas ce OP demande à propos de. Actualiser/Mettre à jour est pratique si vous traitez des données dans le thread principal, mais souhaitez afficher la progression dans l'interface utilisateur. Actualiser/Mettre à jour force la fenêtre à se redessiner, de sorte que l'utilisateur verra le changement de progression. Les liaisons ne vont pas aider dans ce cas. – Spook

Questions connexes