@ceos: Ja, stimmt. DataReceived wird in nem extra Thread ausgelöst.
Aber ich habs ja gleich Threadsave implementiert ;D
Aber gerne auch nochmal die Erklärung:
textBox1.Invoke(...) sorgt dafür, dass das Aktualisieren des Textfeldes in dem dem Textfeld zugehörigen Thread stattfindet. Man bittet das Textfeld praktisch, die übergebene Funktion (DisplayString) im eigenen Thread auszuführen (theoretisch hätte man auch das Form aufrufen können).
Der Delegate ist ein Funktionszeiger, der die auszuführende Funktion hält. Der zweite Parameter sind die Daten, die der Funktion übergeben werden sollen.
Ich seh grad, dass der Code gar nicht laufen kann. Der Port wird weder geöffnet, noch geschlossen. Das musst du noch einfügen.
Lesezeichen