2010-04-20 5 views
0

Dans mon application WPF, je dois lire du texte à partir de plusieurs zones de texte. Étant donné que le code s'exécute dans un thread différent de l'interface utilisateur, j'ai besoin d'utiliser Dispatcher.invoke. En ce moment je travaille avec une zone de texte qui fonctionne bien, mais maintenant j'ai besoin de tous les textes, ai-je besoin d'écrire un Dispatcher.invoke pour chaque zone de texte ou existe-t-il un moyen d'écrire une fonction référence et renvoie le texte?lire du texte à partir de plusieurs contrôles de zone de texte WPF à partir d'un thread différent

Répondre

0

Vous pouvez simplement récupérer le texte de tous les champs TextBox dans le même appel Invoke.

public MainWindow() 
{ 
    InitializeComponent(); 

    Thread thread = new Thread(new ThreadStart(this.ThreadFunc)); 
    thread.Start(); 
} 

private delegate void InvokeDelegate(); 
private void ThreadFunc() 
{ 
    Dispatcher.Invoke(new InvokeDelegate(() => 
    { 
     Debug.WriteLine(this.textBox1.Text + this.textBox2.Text); 
    })); 
} 

Il n'y a pas de raison que vous deviez effectuer plusieurs appels.

Questions connexes