Entwickler-Ecke
WinForms - Textbox und threads
Trautmann - Sa 28.03.09 10:27
Titel: Textbox und threads
Hallo,
ich schreib grad an meinem ersten C#-Projekt und hab ein kleines Problem:
Mein Programm besteht aus einem form mit einer Textbox und einem Button.
Der User soll einen Wert in die Textbox eingeben und dann auf den Button klicken. Dadurch wird dann ein backgroundworker gestartet der eine Berechnung ausführt. Wenn ich jetzt aber das Ergebnis wieder in der Textbox ausgeben will bekomme ich folgende Fehlermeldung:
| Zitat: |
| Ungültiger threadübergreifender Vorgang: Der Zugriff auf das Steuerelement textBox1 erfolgte von einem anderen Thread als dem Thread, für den es erstellt wurde. |
Ich hab probiert ein Event zu schreiben, welches dann die Textbox anspricht aber ich bekommen den selber Error.
Wie kann ich die Textbox im anderem Thread aus dem backroundworker heraus ansprechen?
Benutze 3.5er Framework.
danke schon jetzt
mfg
Trautmann
JüTho - Sa 28.03.09 11:05
Raten, raten, raten. Wo ist bloß meine Glaskugel geblieben, die mir deinen Code erklären kann?
In der SDK-Doku/MSDN gibt es bei BackgroundWorker ein Beispiel, das auch zeigt, wie Werte im RunWorkerCompleted-Ereignis in ein GUI-Element eingetragen werden.
Jürgen
Trautmann - Sa 28.03.09 11:50
Hi,
danke für deine Antwort.
Das RunWorkerCompleted ist ja nur für das Ende des Backgroundworkers gedacht.(oder kann man das öfter aufrufen?) Ich will aber, das mein Backgroundworker während dem Rechnen schon Ergebnisse in die Textbox schreibt. Aber halt keinen ReportProgress sondern einen String.
Kha - Sa 28.03.09 12:22
ReportProgress besitzt auch eine Überladung, der du ein beliebiges object mitgeben kannst.
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!