BackgroundWorker reportProgress in einer anderen Klasse

Ich habe einen ähnlichen code wie der Letzte code in diesem link:

http://msdn.microsoft.com/en-us/library/system.componentmodel.backgroundworker.aspx

Aber die ComputeFibonacci Methode ist, die innerhalb einer anderen Klasse, so meine doWork-Methode wäre diese:


private void backgroundWorker1_DoWork(object sender, 
            DoWorkEventArgs e)
        {   
            BackgroundWorker worker = sender as BackgroundWorker;

            e.Result = new MyClass().ComputeFibonacci((int)e.Argument, worker, e);
        }

Mein code sperrt die Anwendung für immer, wenn ich den Arbeiter.ReportProgress(percentComplete);
innerhalb der fibonaci-Methode, die in einer anderen Klasse.
Ich denke, das problem ist, dass die backgroundWorker1_ProgressChanged ist, die innerhalb einer anderen Klasse, statt MyClass.

Was soll ich bitte tun?

Wenn ich die fibonaci-Methode innerhalb der gleichen Klasse, das problem nicht auftreten. Aber in meinem Fall nicht Sinn, den code in der gleichen Klasse.

Dank

ProgressChanged-Feuer auf dem Haupt-thread, was ist Los in progress geändert, dass Sie denken, es ist was zu Thema? Könnten Sie mehr code?
die nur wie der Letzte code in den link, den ich schrieb.
Ja, können Sie näher erläutern, was du meinst, dass Ihr backgroundWorker1_ProgressChanged Methode in einer anderen Klasse? Könnten Sie ein kleines Beispiel?
Schauen Sie, in diesem link. Alle Methoden sind innerhalb der FibonacciForm. Aber ich will das Fibonaci-Methode innerhalb einer anderen Klasse, und nennen Sie es. Immer noch nicht verstanden? Ich rufe also mit new MyClass().fibonaci()
Ich verstehe, wie Sie eine BackgroundWorker-Klasse. Es ist kein problem mit der Verwendung einer anderen Klasse in einem BackgroundWorker, dein problem muss vorhanden sein in dem, was Sie tatsächlich tun, in Ihren anderen Klasse. Wie die vorige Antwort sagt, müssen Sie irgendeine Art von Schleife. Wir brauchen mehr Informationen, was deine andere Klasse ist zu tun, um das problem zu verstehen.

InformationsquelleAutor alansiqueira27 | 2011-04-27

Schreibe einen Kommentar