Bonjour,
J'explique le systeme :
Je tir avec un pistolet hardware et celui ci me renvoi un spectre via le port Serie , ce meme port , quand il recoit un spectre , leve un evenement
J'ai une MainForm qui est MDIContainer
Je veux qu à chaque tir effectué , une nouvelle fenetre SpectreForm soit créée
dans ma MainformLoad je crée un evenement :
AddHandler Communication.tir_stoped, AddressOf communication_tir_stoped
qui informe que la transmission de donnée est finie
PrivateSub communication_tir_stoped()
System.Windows.Forms.Cursor.Current = System.Windows.Forms.Cursors.Default
'MsgBox("Fin du Tir")
Dim res As DialogResult
res = MessageBox.Show("Voulez vous garder ce spectre ?", "Capture", _
MessageBoxButtons.YesNo, MessageBoxIcon.Exclamation)
If res = DialogResult.Yes Then
MDIFilleActive = New SpectreForm
MDIFilleActive.MdiParent = Me
MDIFilleActive.Spectre_Brut = DP4DataTampon
MDIFilleActive.Show()
MDIFilleActive.Affiche(Nothing, Nothing)
ElseIf res = DialogResult.No Then
Panel18.Visible = False
EndIf
EndSub
J'obtiens l'erreur suivante :
MDIFilleActive.MdiParent = Me
Une exception non gérée du type 'System.ArgumentException' s'est produite dans system.windows.forms.dll
Informations supplémentaires : Les contrôles créés sur un thread ne peuvent pas être parents d'un contrôle d'un autre thread.
J'ai l'impression que le declenchement de l'evenement crée un nouveau thread et que le "Me" ne fait plus référence à la MainForm
Est ce que quelqu'un saurait régler ce probleme de MDIParent ?
J'espere avoir expliquer le plus clairement et plus brevement possible
merci
Partager