2016-03-19 8 views
0

Guten TagMultithreading - In Punkt Serie in VB

Ein Diagramm eine Reihe von 3-Serie hat in Form hinzugefügt:

(chrtReadTimePlot is private) 
chrtRealTimePlot.Series.Add(SerRT_B_Voltage) 
chrtRealTimePlot.Series.Add(SerRT_Charge_Current) 
chrtRealTimePlot.Series.Add(SerRT_P_Voltage) 

jede Serie hat seine get set Methoden

Problem : Jede Serie verfügt über Datenpunkte, die basierend auf einem Threading.Timer.Tick() hinzugefügt wurden:

SerRT_B_Voltage.Points.AddXY(MPPTdata(x1,y1) 
SerRT_Charge_Current.Points.AddXY(x2,y2) 
SerRT_P_Voltage.Points.AddXY(MPPTdata(x3,y) 

Beim Hinzufügen eines Punktes zu einer dieser Serien, bekomme ich einen Cross-Thread Fehler.

Fehler:

An unhandled exception of type 'System.InvalidOperationException' occurred in System.Windows.Forms.dll

Additional information: Cross-thread operation not valid: Control 'chrtRealTimePlot' accessed from a thread other than the thread it was created on.

Ich sehe nicht, wie ich eine Invoke in diesem Fall kann

Alle Gedanken/Vorschläge von großer Hilfe sein würden!

Antwort