Ik heb een hoofdform, hieronder hangt een class (met alleen idisposable interface) die scanner data afvangt (uit een compoort) en deze verwerkt.
Bij dit verwerken moet er een form getoond worden (in sommige gevallen).
De compoort-data wordt mbv het event SerialDataReceivedEventHandler uit SerialPort verwerkt. Deze draait echter in een andere thread, dus als ik wat wil laten zien moet ik invoken.
Nu is het zo dat mijn class nergens van erft wat een isynchronizeinvoke interface implementeerd, oftwel ik kan geen invoke doen. Als ik in deze handler een form wil laten zien, krijg ik niets te zien, omdat ie niet vanuit de goede thread is aangeroepen.
Ik wil dus een invoke kunnen doen vanuit mijn class en de isynchronizeinvoke interface implementeren. Optie 2 is dat ik een functie maak in mijn form die daar de invoke doet. Deze functie is echter geen event dus ik weet niet hoe ik dit kan oplossen.
EDIT:
Form werd wel getoond, alles deed het zoals het werkt. Echter als hij standaard niet op de voorgrond komt en er geen taakbalk melding van is, weet ik het natuurlijk nooit
Bij dit verwerken moet er een form getoond worden (in sommige gevallen).
De compoort-data wordt mbv het event SerialDataReceivedEventHandler uit SerialPort verwerkt. Deze draait echter in een andere thread, dus als ik wat wil laten zien moet ik invoken.
Nu is het zo dat mijn class nergens van erft wat een isynchronizeinvoke interface implementeerd, oftwel ik kan geen invoke doen. Als ik in deze handler een form wil laten zien, krijg ik niets te zien, omdat ie niet vanuit de goede thread is aangeroepen.
Ik wil dus een invoke kunnen doen vanuit mijn class en de isynchronizeinvoke interface implementeren. Optie 2 is dat ik een functie maak in mijn form die daar de invoke doet. Deze functie is echter geen event dus ik weet niet hoe ik dit kan oplossen.
EDIT:
Form werd wel getoond, alles deed het zoals het werkt. Echter als hij standaard niet op de voorgrond komt en er geen taakbalk melding van is, weet ik het natuurlijk nooit
[ Voor 9% gewijzigd door elgringo op 05-06-2007 11:55 ]
if broken it is, fix it you should