El GridView y sus eventos: El evento PageIndexChanging

En este post, vamos a ver el evento PageIndexChanging del GridView. Vamos a ver cuando se ejecuta, cual es su finalidad y lo que nos aporta.

El GridView es un control que nos proporciona ASP.NET cuya funcionalidad es “trabajar” con información tabular. Seguramente es uno de los controles más usados y a lo lardo de las distintas versiones de Visual Estudio, ha cambiado el nombre, pero siempre se ha mantenido. Este control, es muy pesado y consume gran cantidad de memoria pero aporta mucha funcionalidad que muchas veces no llegamos a aprovechar porque generalmente lo usamos para mostrar información (entendamos que hablo de aplicaciones Web).

Este post forma parte de una serie de post llamada El GridView y sus Eventos. Los post que forman esta serie y que si has llegado aquí te pueden interesar son:

El evento PageIndexChanging.

El GridView, nos aporta la posibilidad de poder paginar los resultados pudiendo así mostrar cada vez un conjunto de registros. Esto lo conseguimos, si le seteamos a true la propiedad AllowPaging, y también podemos indicarle el número de registros que queremos mostrar cada vez (por defecto, si no recuerdo mal es 10) por medio de la propiedad PageSize.

El código necesario sería el siguiente:

<asp:GridView
ID="gvCities"
runat="server"
DataKeyNames="CityCode"
CssClass="cssTableGrid"
AutoGenerateColumns="False"
AllowPaging="true"
PageSize="15"
OnPageIndexChanging="GvCities_PageIndexChanging"> </asp:GridView>

Cuando seteamos la propiedad AllowPaging a true, además de mostrar los resultados de forma paginada, nos muestra en la parte inferior del control un control de paginación (que no cumple las guidelines que vimos anteriormente, pero menos da una piedra 😉).

El evento PageIndexChanging, se levanta cada vez que pulsamos en uno de los links del control de paginación. La implementación sería algo así:

protected void GvCities_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
GridView gv = (GridView)sender;
gv.PageIndex = e.NewPageIndex;
bindCitiesGrid();
}

En los argumentos del evento (del tipo GridViewPageEventArgs), recibimos el nuevo indice de página, este, unicamente tenemos que asignarselo a la propiedad PageIndex del GridView y ya esta todo hecho, la proxima que hagamos el binding del control nos mostrara el conjunto que esperamos.

Sencillo verdad, pues esto es todo. Podeis probar a poner el GridView (como en el código de ejemplo :-D) dentro de UpdatePanel y vereis como el resultado es bastante aparente (costando muy poco trabajo).

Post relacionados.

Este post forma parte de una serie de post llamada El GridView y sus Eventos. Los post que forman esta serie y que si has llegado aquí te pueden interesar son:

Descargas – Downloads.

8 pensamientos en “El GridView y sus eventos: El evento PageIndexChanging

  1. El GridView y sus eventos: El RowDataBound « a deshoras

  2. Ordenando un GridView mediante el evento Sorting (El GridView y sus eventos: El evento Sorting) « a deshoras

  3. Saludos! ando buscando la forma de paginar un gridview pero dándole la posibilidad al usuario de especificar el número de páginas a mostrar, por citar un ejemplo, si el conjunto de datos consta de 100 registros que el usuario elija que se muestren en grupos de 10, 20 etc.

    Saludos.

Deja un comentario