Forum: PC-Programmierung vb.net Textbox.contains


von fash (Gast)


Lesenswert?

Guten Abend, habe ein kleines Problem hier.

Ich sende über einen Timer, der beim laden der Form gestartet wird, eine 
Abfrage über COM1.

Im SerialPort Data_Received Event steht folgendes:
1
If RichtextBox1.Text.Contains("05 ff") Then SerialPort1.Close()

Sobald also 05 ff vom Gerät am COM1 in die Textbox geschrieben wird, 
soll der Port geschlossen werden, aber es wird einfach weiter gesendet, 
der Port wird nicht geschlossen, auch wenn 05 ff in der Textbox 
erscheint.

Die 05 ff erscheint korrekt in der Textbox, das empfangen klappt also.

Ich habe testweise den oben genannten Befehl auch in Form.Load 
geschrieben, ebenfalls ohne Erfolg.

Auch habe ich das
1
...then Serialport1.close
 mal durch eine MsgBox ersetzt, wenn 05 ff in der Textbox erscheint, die 
öffnet sich aber auch nicht, egal wie lange 05 ff in der Box steht!

Ich stehe auf dem Schlau - was mach ich falsch?

Danke für Denkanstöße...

von Timo N. (tnn85)


Lesenswert?

Ist das ein CR + LF Problem? Wird noch Carriage Return + Line feed 
mitgesendet und man muss das auch abfragen?

von Mimann M. (fash)


Lesenswert?

Das Problem hat sich gelöst, die genannte Zeile

fash schrieb:
> If RichtextBox1.Text.Contains("05 ff") Then SerialPort1.Close()

muss in den TextChanged Event der TextBox, nicht in den SerialReceive 
oder FormLoad Event...hätte nicht so vorschnell fragen sollen ;) 
Anfängerfehler...

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.