Bonjour à tous,
Dans une form, j'instancie un port série:
Je l'ouvre
Code : Sélectionner tout - Visualiser dans une fenêtre à part Friend WithEvents serialPort As IO.Ports.SerialPort
Et je reçois mes données dans l'évènement
Code : Sélectionner tout - Visualiser dans une fenêtre à part serialPort = My.Computer.Ports.OpenSerialPort("COM1", 9600, IO.Ports.Parity.None, 8, IO.Ports.StopBits.One)
Et lors de ma réception via le port série, au moment ou j'assigne ma valeur à mon textBox, j'ai l'erreur suivante:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 Private Sub serialPort_DataReceived(ByVal sender As Object, ByVal e As System.IO.Ports.SerialDataReceivedEventArgs) Handles serialPort.DataReceived Dim value As String = serialPort.ReadExisting txtCB.text = value End Sub
Croos-thread operation not valid: Control txtCB accesssed from a thread other than the thread it was created on.
Je ne trouve pas de riason ni de solution à mon problèm.e J'imagine que l'évènement agit comme un thread mais alors comment faire pour lui permettre de modifier la valeur de la textBox sur ma form?
J'ai fait un fonction SetValue(byval value as string) que j'appelle à partir de l'event mais l'erreur reste identique.
Merci d'avance pour vos infos.
Partager