Avatar ·

Fehler Cross-thread operation not valid: Wie greife ich in C# WinForms aus einem anderen Thread auf Steuerelemente zu

Hallo zusammen! Ich bin neu in C# und WinForms und bin auf ein Problem mit Multithreading gestoßen. Ich schreibe eine Anwendung, die Daten aus dem Internet lädt und in einer ListBox anzeigt. Damit die Oberfläche nicht einfriert, starte ich den Ladevorgang in einem separaten Thread über Task.Run. Hier ist der vereinfachte Code: ```csharp private void buttonStart_Click(object sender, EventArgs e) { Task.Run(() => LoadData()); } private void LoadData() { for (int i = 0; i < 10; i++) { // Simulation des Datenladens Thread.Sleep(1000); // Versuche, ein Element zur ListBox hinzuzufügen listBoxResult.Items.Add("Element " + i); } } ``` Beim Ausführen wird in der Zeile `listBoxResult.Items.Add(...)` eine Ausnahme ausgelöst: "Cross-thread operation not valid: Control 'listBoxResult' accessed from a thread other than t