CLR: .Net / Mono / Boo / Otros CLR > ASP .NET
Paginar
The Black Boy:
Hola Amigos:
la verdad no habia utilizado este control y me ha costado un poco, pero bueno he aprendido algo, y es que le vi entre las propiedades que tiene este componente una opcion de paginacion, mi pregunta y problema es el siguiente
enlace el control con una de las tablas de la BD que tiene muchos registros, y le dije al control que me paginara cada 15 registros, y efectivamente en la pagina solo se ven los primeros 15, pero cuando le oprimo en siguiente no me muestra los siguientes 15 registros :( por que, o que me falta hacer..
agradezco cualquier colaboracion...
Saludos :hola:
Güorker:
Hola,
Tienes que capturar el evento PageIndexChange del Datagrid, y en ese metodo asignarle el indice de la nueva pagina para el datagrid.
Saludos
IGarcia:
hola The Black Boy!!
No se si te servirá de ayuda pero yo lo que he hecho para paginar el datagrid son los siguientes pasos:
1.- He asignado la función Datagrid1_Page al evento OnPageIndexChanged del datagrid de la siguiente forma:
--- Código: Text --- <asp:datagrid id="DataGrid1" runat="server" Width="750px" Font-Names="Verdana" Font-Size="8pt" BackColor="#ECE9D8" OnPageIndexChanged="Datagrid1_Page" AllowPaging="True" OnUpdateCommand="DataGrid1_Update" OnDeleteCommand="DataGrid1_Delete" OnCancelCommand="DataGrid1_Cancel"OnEditCommand="DataGrid1_Edit" DataKeyField="nlineas" AutoGenerateColumns="False" BorderColor="ActiveCaption">
2.- He declarado en el código la función de la siguiente forma:
--- Código: Text ---Sub DataGrid1_Page(ByVal sender As Object, ByVal e As DataGridPageChangedEventArgs) DataGrid1.CurrentPageIndex = e.NewPageIndex BindGrid_Visitas() End Sub
Donde BindGrid_Visitas() es la función que me hace la select del datagrid y me muestra de nuevo los valores.
A mi me funciona perfectamente, asi que espero que tambien te sirva. Si tinenes alguna duda no dudes en consultar de nuevo.
Suerte y que te funcione.
The Black Boy:
hola amigos, muchas gracias por sus repuestas, voy a probarlas y les comentaré como me fue..
la respuesta que das IGracia hay un fragmento que no me quedó muy claro y es que la verdad pues yo hasta hace muy poco empecé con ASP, el gragmento es el sgte:
--- Código: Text --- OnPageIndexChanged="Datagrid1_Page" AllowPaging="True" OnUpdateCommand="DataGrid1_Update" OnDeleteCommand="DataGrid1_Delete" OnCancelCommand="DataGrid1_Cancel"OnEditCommand="DataGrid1_Edit" DataKeyField="nlineas" AutoGenerateColumns="False" BorderColor="ActiveCaption"
en el anterior fragmento de code, no se exactamente que hace :unsure:
Muchas gracias por sus respuestas... :smartass:
IGarcia:
Vale, vamos a ir por partes...
Estas primeras declaraciones son propiedades del grid
--- Código: Text ---DataKeyField="nlineas" AutoGenerateColumns="False" BorderColor="ActiveCaption" AllowPaging="True" DataKeyField es el indice del grid. La clave primaria.
AutoGenerateColumns permite que selecciones para mostrar todas las columnas de la B.D. que muestras(true) o solamente algunos campos de la base en particular(False). Para seleccionar cuales mostrar seleccionas en el menú emergente del grid (boton derecho sobre el grid) "Property builder", y sale el menú "General" en la que muestra la base de datos, la tabla a la que haces la consulta y el indice del grid. Luego en el 2º menú: "Columns", seleccionas los campos que desees mostrar.
BorderColor indica al color del borde del grid.
AllowPaging es la propiedad que permite la paginación.
--- Código: Text ---OnUpdateCommand="DataGrid1_Update" OnCancelCommand="DataGrid1_Cancel"OnEditCommand="DataGrid1_Edit" en el menú "Columns", que ya estabas, hay unbotón llamado "Button Column" que te da la opción de insertar una nueva columna "Edit, Update, Cancel". Estos son los eventos que recogen cada uno de estos cambios. Mira la siguiente página que indica como va:
http://www.c-sharpcorner.com/asp/Code/DBGridEditingPA.asp
--- Código: Text ---OnDeleteCommand="DataGrid1_Delete" Es en el mismo sitio pero el botón de debajo "Delete"
Y el último:
--- Código: Text ---OnPageIndexChanged="Datagrid1_Page" Es el que recoge el evento de paginación. Una vez pueta la painación a true , sale o bien "Siguiente" y "anterior" o bien, si los numeras, "1", "2", "3"... Cada vez que pulsas alguno de ellos esta lineaa recoge el evento y ejecuat el código que te puse de la función "Datagrid1_Page".
Miara por la web que vienen un montón de ejemplos. Suerte y ya me contarás si te ha funcionado.
Navegación
[#] Página Siguiente
Ir a la versión completa