Recientemente comencé a programar en WPF y me encontré con el siguiente problema. No entiendo cómo usar el Dispatcher.Invoke()
método. Tengo experiencia en subprocesos y he creado algunos programas sencillos de Windows Forms en los que acabo de usar el
Control.CheckForIllegalCrossThreadCalls = false;
Sí, sé que es bastante tonto, pero estas eran aplicaciones de monitoreo simples.
El hecho es que ahora estoy creando una aplicación WPF que recupera datos en segundo plano, comienzo un nuevo hilo para hacer la llamada para recuperar los datos (desde un servidor web), ahora quiero mostrarlo en mi formulario WPF. La cuestión es que no puedo establecer ningún control desde este hilo. Ni siquiera una etiqueta ni nada. ¿Como puede ésto ser resuelto?
Comentarios de respuesta:
@Jalfp:
¿Entonces uso este método Dispatcher en la 'nueva banda de rodadura' cuando obtengo los datos? ¿O debería hacer que un trabajador en segundo plano recupere los datos, los ponga en un campo e inicie un nuevo hilo que espera hasta que este campo se complete y llame al despachador para mostrar los datos recuperados en los controles?