Hallo Forum, ich möchte mir eine kleine Testsoftware schreiben wo ich über ein Label ausgebe was über die RS232 rein kommt. Ich baue mir den String im Event zusammen und wenn er fertig ist wird ein Bit "input_ok" gesetzt. In einem Timer wird das Bit abgefragt und wenn es True ist dann der Parser gestartet. Nun meine Frage : Wie kann ich das ohne Timer lösen, sobald ich die Zuweisung meines Strings ins Label mach wird Label1 nie beschrieben?? (im Timer funktioniert es) Ich finde die Timer lösung blöd da die Software immer frägt ob der String fertig ist.... //Serial INT private void serialPort1_dataReceived(object sender, EventArgs e) { byte[] buffer = new byte[this.serialport_1.BytesToRead]; try { this.serialport_1.Read(buffer, 0, this.serialport_1.BytesToRead); for (int i = 0; i < buffer.Length; i++) { if (buffer[i] == 0x0D) input_ok = true; tempstring += ((char)buffer[i]); // tempstrin globale Variable } } catch { buffer = null; } //if (buffer.Length > 64) buffer = null; }
Hallo Alois, eine Invoke Methode auf den UI thread ausführen. Ich habe hier ein sample, wo das genau beschreiben wird. Ich hoffe es wird Dir keine grossen Schwierigkeiten bereiten VB.NET nach C# zu konvertieren. http://code.msdn.microsoft.com/SerialPort-Sample-in-VBNET-fb040fb2 Gruss Ellen C# VB.NET konverter http://www.developerfusion.com/tools/convert/csharp-to-vb/
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.