Hallo,
das Problem habe ich schon länger und habe dafür auch noch keine Lösung gefunden. Deshalb frage ich jetzt am besten einfach mal.
Auf Google haben bisherige Lösungen leider nie funktioniert
[Windows Forms -> Visual Studio]
Vorhaben:
Ich starte eine Aktion in einem 2. Thread, damit das UI nicht einfriert. Nun will ich aber, dass die Progressbar des UI einen % Wert zurückbekommt, damit man als user sieht, wie weit der Fortschritt ist.
Idee1: Timer nehmen, und Variablen abgleichen -> Problem: Der Timer ist zu langsam, man bräuchte eine while-Schleife und die friert das UI wieder ein.
Eine andere Idee habe ich nicht, um das Problem zu lösen. Es kommt der folgende Fehler:
An sich verstehe ich, warum es nicht geht, weiß aber leider keine Lösung. Dies ist ein Code, den ich extra für diese Frage geschrieben habe, um es Bildlich zu simulieren.
Dabei sieht die UI so aus:
Wie bekomme ich jetzt also den Fortschritt aus Thread2 in die Progressbar von Thread1?
Danke schon Mal für jede Hilfe
![Bild zum Beitrag](https://images.gutefrage.net/media/fragen/bilder/c-aktuelle-progress-anzeige-per-2-thread-updaten/0_big.png?v=1620659207000)