Estoy intentando actualizar un cuadro de texto. Pensé que mi código de enhebrado solucionaría el problema, pero no es así. ¿Alguien puede ayudarme con esto?Errores de subprocesos múltiples en C#
new Thread((ThreadStart)delegate { txtCapacitance.Text = Math.Round(capacitance, 3).ToString(); }).Start();
da el siguiente error:
Cross-thread operation not valid: Control 'txtCapacitance' accessed from a thread other than the thread it was created on.
Tenga en cuenta que todo esto se va a iniciar por una función DataReceived que se llama cada vez que se reciben datos USB.
Esto no solucionará el problema. Los trabajadores de segundo plano todavía ejecutan un hilo diferente al hilo de la interfaz de usuario. –
@Marcelo Cantos, ¿Has leído la documentación? * Debe tener cuidado de no manipular ningún objeto de interfaz de usuario en su controlador de eventos DoWork. En su lugar, comuníquese con la interfaz de usuario a través de los eventos ProgressChanged y RunWorkerCompleted. * –
tiene razón; Me equivoco; mis disculpas. Confundí esto con un grupo de hilos normal. –