Ver Mensaje Individual
  #1 (permalink)  
Antiguo 03/02/2005, 14:57
Avatar de reel
reel
 
Fecha de Ingreso: febrero-2004
Ubicación: Managua, Nicaragua
Mensajes: 496
Antigüedad: 21 años
Puntos: 1
DataGrid - Paginación

Hola a todos,

Estoy tratando de usar la paginación de un DataGrid, todo me funciona bien, hasta que pongo EnableViewState=False, en el evento PageIndexChange vuelvo a enlazar el control, pero el grid no se me muestra. Si cambio nuevamente el valvor de EnableViewSate a true si puedo interactuar con las página, el cambio de página lo realiza a la perfección.

Lei por ahí que caundo un DataGrid se vuelve a cargar con cada ida y vuelta es mejor poner el ViewSate en falso para ahorrar en el volumen de datos, pero no me funciona .

Aca le dejo el codigo que tengo el el evento PageIndexChange.

Código:
private void DataGrid1_ChangePage(object sender, DataGridPageChangedEventArgs e)
{
	DataGrid1.CurrentPageIndex = e.NewPageIndex;
	BindGrid();
}
private void BindGrid()
{
	string sSql = "SELECT * FROM cLeyes ";
	if(ViewState["SQL"]!= "")
	{	
		sSql += "WHERE " + ViewState["SQL"];
	}

	System.Data.OleDb.OleDbConnection myConn = new System.Data.OleDb.OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\\reel\\temp\\SISLEY\\sysley.mdb;Persist Security Info=False");

	System.Data.OleDb.OleDbDataAdapter myComm = new System.Data.OleDb.OleDbDataAdapter(sSql,myConn);
			
	DataSet dsInstrumentos = new DataSet();

	try
	{
		myComm.Fill(dsInstrumentos,"cLeyes");
		DataGrid1.DataSource = dsInstrumentos.Tables["cLeyes"].DefaultView;
		DataGrid1.DataBind();
		htmlMensajes.InnerHtml = dsInstrumentos.Tables[0].Rows.Count + " instrumentos encontrados.";
	}
	catch(System.Data.OleDb.OleDbException e)
	{
		htmlMensajes.InnerHtml = e.Message;
		htmlMensajes.Style["Color"] = "Red";
	}
	myConn.Close();
}
Alguien podría darme una manito por favor?

Saludes
__________________
Leer es Saber, REEL.
Mi Blog