Paginar un DataGridView en WinForms

Mostrar un DatagridView paginado y las Paginas en un Combobox
Oscar Hernando Barón Roa
 Paginar un DataGridView en WinForms
Mostrar un DatagridView paginado y las Paginas en un Combobox
Visitas:36590
Fecha publicación:5/8/2008 1:17:23 PM
En algun momento mostrar datos en un DataGridView es bastante facil, pero cuando la cantidad de registros es grande no es tan amigable para un usuario, a diferencia del DataGrid de ASP.NET al DataGridView es que este ultimo no trae la propiedad para paginarlo. Alguien un comentario lo sugirio y aqui les muestro una forma sencilla y artesanal de hacerlo. Para el ejemplo creare un proyecto con un datagridview y ademas un combobox donde mostrare las paginas.
 
Para el ejemplo usare las siguientes variables que me permitiran paginar mi DataGridView. entre ellas una conexion para cargar los datos de una base de datos yo lo hice en el ejemplo con una base de datos de ejemplo con un a tabla de ciudades.
 
Crearemos una funcion para cargar un datatable (dtprincipal) que nos permitira cargar de la base de datos los registros que necesito.
 
Con la Siguiente funcion calculare el numero de paginas segun la cantidad de filas que tenga el datatable (dtprincipal), por defecto en una de las variables coloque que se paginara por 20 registros.
 
Crearemos una clase dentro del proyecto llamada paginarDataDridView , la cual recibira por valor el datatable (dtprincipal) que cargamos al inicio, ademas de los limites ini y fin, para saber hasta donde paginara. Lo que espongo es muy artesanal y algo que se me ocurrio y es que en un datatable nuevo (dtnew) colocare las filas que estan en el rango de los limites. ese datatable lo retornare y se lo asignaremos al datagrid. Algo sencillo creo yo.
 
El siguiente metodo me permite llamar la funcion de la clase creada anteriormente y asignarle lo que retorna al datagridview.
 
Dentro del evento load de la forma colocaremos el siguiente codigo que nos permite ejecutar las funciones anteriormente ya mensionadas.
 
 
Por medio del combobox podre cambiar de pagina, una vez seleccione una de las paginas el calculara el rango con la funcion cambiar_pagina().
 
la funcion que me calcula el rango de la pagina seleccionada en el combobox.
 
Espero que les sirva!! o les pueda dar ideas el codigo en mas informacion...
 
Comentarios:
  • Visitante

    Escribió 1/19/2013 4:37:14 PM

    Quiza algo como esto tambien les pueda servir http://www.youtube.com/watch?v=heXGkIM1x5g

  • Visitante

    Escribió 8/1/2013 6:54:45 PM

    ojala me responadas un favor en tu ejemplo el ultimo registro de cada pagina se repite en la pagina siguiente puedes arreglarlo e tratado sin conseguirlo gracias markho34@hotmail.com

  • Visitante

    Escribió 10/2/2013 11:53:45 AM

    gracias por responder por favor podrias contestar el correo que te mande gracias markho34@hotmail.com

  • Comentario:


Contenido relacionado