Laden...

Exception bei lesen einer Controleigenschaft aus einem Thread

Erstellt von christof.k vor 15 Jahren Letzter Beitrag vor 15 Jahren 815 Views
C
christof.k Themenstarter:in
159 Beiträge seit 2005
vor 15 Jahren
Exception bei lesen einer Controleigenschaft aus einem Thread

Hallo,

ich habe bereits viel über das ändern von Werten eines Controls über Invoke gelesen und dies auch erfolgreich umgesetzt.

Überraschender Weise bekomme ich eine InvalidOperationException, sobald ich versuche, die Textlänge einer RichTextBox aus einem fremden Thread zu lesen.

Kurz zu meiner Anwendung:
Ich möchte alle Consoleausgaben in diese RichTextBox umleiten.
Dazu erschaffe ich meinen eignene TextWriter, der die RichTextBox im Konstruktor übergeben bekommt und das schreiben übernimmt.
Das schreiben in die RichTextBox mache ich per Invoke, was auch super klappt.
Nun wollte ich die Ausgabe formatieren und wollte dazu die Länge des Textes in der RichTextBox vor und nach dem Einfügen ermitteln. Hier startet nun mein Problem da bei der Zeile

int a = control.TextLength

die Exception auftritt.

Bin über jeden Tip dankbar.

Christof

49.485 Beiträge seit 2005
vor 15 Jahren
C
christof.k Themenstarter:in
159 Beiträge seit 2005
vor 15 Jahren

Hallo,

danke für den Tip. Ich bin immer davon ausgegangen, dies wäre nur beim Schreiben nötig (dafür gibt es zumindest jede Menge Beispiele, keine für das Lesen von Werten). Deshalb hatte ich immer angenommen, dass Delegates immer typ void sind.

War also eine nette Lernkurve und jetzt klappt alles blendend.

Danke
Christof