Foros del Web » Programando para Internet » ASPX (.net) »

Problema Con GridView con Muchos Registros

Estas en el tema de Problema Con GridView con Muchos Registros en el foro de ASPX (.net) en Foros del Web. Estimados, Los molesto por que estamos desarrollando un portal que en una de sus paginas tiene 1 gridview donde se cargan 5 campos, uno de ...
  #1 (permalink)  
Antiguo 27/06/2012, 06:46
 
Fecha de Ingreso: julio-2007
Mensajes: 2
Antigüedad: 17 años
Puntos: 0
Problema Con GridView con Muchos Registros

Estimados,

Los molesto por que estamos desarrollando un portal que en una de sus paginas tiene 1 gridview donde se cargan 5 campos, uno de ellos, es actualizable y al perder el foco ejecuta una serie de validaciones del lado del servidor. El gridview se encuentra dentro de un tabcontainer ya que la lista de registros esta dividida por temas.

La código funciona bien hasta que la suma de la cantidad de registro, de todos los gridview de la pagina, supera los 300 aproximadamente, en ese momento, cuando debería ejecturarse el evento al perder el foco el campo, nunca entra al evento.

A alquilen le paso algo similar?

Muchas Gracias.
Luck
  #2 (permalink)  
Antiguo 27/06/2012, 07:33
Avatar de cgonzalezm  
Fecha de Ingreso: junio-2012
Mensajes: 55
Antigüedad: 12 años, 1 mes
Puntos: 13
Respuesta: Problema Con GridView con Muchos Registros

¿Podrías indicar por favor el nombre de los eventos que estás llamando?
  #3 (permalink)  
Antiguo 27/06/2012, 08:34
 
Fecha de Ingreso: julio-2007
Mensajes: 2
Antigüedad: 17 años
Puntos: 0
Respuesta: Problema Con GridView con Muchos Registros

Hola,

El evento es

templateItemCantidad.txtCantidad_TextChanged += new EventHandler(txtCantidad_TextChanged);



El codigo es el siguiente:

void txtCantidad_TextChanged(object sender, EventArgs e)
{
WriteError("Entro al evento...");
string cantidadIngresada = ((TextBox)sender).Text.Trim();
if (!String.IsNullOrEmpty(cantidadIngresada))
{
WriteError("Obtuvo la cantidad...");
string articulo = HttpUtility.HtmlDecode(((TableCell)(((ControlColle ction)(((GridViewRow)((TextBox)sender).Parent.Pare nt).Controls))[0])).Text);
WriteError("Obtuvo el articulo...");
string cantidadNueva = string.Empty;

if (!ArticulosIngresados.ContainsKey(articulo))
cantidadNueva = CargarArticuloCantidad(articulo, cantidadIngresada);
else
cantidadNueva = ActualizarArticuloCantidad(articulo, cantidadIngresada);

WriteError("Guarda el articulo en memoria...");

//Ingreso cantidad redondeada si era necesario
((TextBox)sender).Text = cantidadNueva;

//Actualizo los totales de la fila
if (ArticulosIngresados.ContainsKey(articulo))
((TextBox)(((GridViewRow)((TextBox)sender).Parent. Parent)).FindControl("txtTotal")).Text = Math.Round(ArticulosIngresados[articulo].Cantidad * ArticulosIngresados[articulo].PrecioFinal, 2).ToString();

WriteError("Calculo de totales x linea..");

this.ActualizarTotales();

WriteError("Totales");

//Guardo el diccionario en session
Session["articulos" + this.comprobante.ComprobanteId] = ArticulosIngresados;

WriteError("Guardo session");

((TextBox)sender).Focus();
}
}

Pero nunca logra entrar cuando son mas de 300 registros en la grilla, si son menos, funciona perfecto

Gracias
  #4 (permalink)  
Antiguo 27/06/2012, 16:41
Avatar de cgonzalezm  
Fecha de Ingreso: junio-2012
Mensajes: 55
Antigüedad: 12 años, 1 mes
Puntos: 13
Respuesta: Problema Con GridView con Muchos Registros

Podrías intentar hacer una paginación a la grilla, tal vez solucione tu problema y a la vez se vería más amigable la página.

También podrías intentar crear otro control y eliminar el anterior. varias veces me ha pasado que un control se comporta mal en los eventos y al crear otro con otro nombre se comporta bien. Estas cosas raras pasan a veces.

Etiquetas: gridview, muchos, registros
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 21:45.