Foros del Web » Programación para mayores de 30 ;) » .NET »

Aplicacion se traba al realizar tarea

Estas en el tema de Aplicacion se traba al realizar tarea en el foro de .NET en Foros del Web. hola, como estan? hice una aplicacion en la que hay un formulario principal , desde el se accede a otros formularios , por ejemplo a ...
  #1 (permalink)  
Antiguo 20/01/2014, 20:19
 
Fecha de Ingreso: marzo-2011
Ubicación: tucuman
Mensajes: 25
Antigüedad: 13 años, 7 meses
Puntos: 1
Exclamación Aplicacion se traba al realizar tarea

hola, como estan?
hice una aplicacion en la que hay un formulario principal , desde el se accede a otros formularios , por ejemplo a uno donde hay un datagrid donde se muestra un listado de productos que se obtienen sacandolos de una base de datos, cuando la lista de productos es larga se demora en etraer los campos de la base de datos , esto hace que TODA la aplicacion se trabe por un largo rato , hasta q se termina de realizar la carga los campos de la base de datos.
¿Como puedo hacer para que no se trabe toda la aplicacion?
es decir ¿como puedo hacer para q cuando en un formulario se este realizando una tarea y se demore en hacerla , no me trabe todos los demas formularios ???

gracias , saludos
  #2 (permalink)  
Antiguo 21/01/2014, 01:38
Avatar de Malenko
Moderador
 
Fecha de Ingreso: enero-2008
Mensajes: 5.323
Antigüedad: 16 años, 10 meses
Puntos: 606
Respuesta: Aplicacion se traba al realizar tarea

El problema es que la carga de datos se realiza de forma sincrona, por lo que la aplicación está a la espera de los datos para refrescar la parte gráfica de la misma.

Lo que tendrías que hacer es cargar los datos en un segundo plano usando, por ejemplo, un BackGround Worker.

Aqui tienes un ejemplo de como usarlo :)
__________________
Aviso: No se resuelven dudas por MP!

Etiquetas: aplicacion, formularios, traba
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 09:15.