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

Problemas al Paginar un Datagrid

Estas en el tema de Problemas al Paginar un Datagrid en el foro de ASPX (.net) en Foros del Web. Tengo un problema al paginar un Datagrid, y la verdad es que es muy raro. Tengo desactivada la propiedad AutoGenerateColumns del Datagrid debido a que ...
  #1 (permalink)  
Antiguo 26/09/2005, 09:49
 
Fecha de Ingreso: agosto-2004
Ubicación: Cordoba - Argentina
Mensajes: 6
Antigüedad: 19 años, 8 meses
Puntos: 0
Problemas al Paginar un Datagrid

Tengo un problema al paginar un Datagrid, y la verdad es que es muy raro.
Tengo desactivada la propiedad AutoGenerateColumns del Datagrid debido a que a las columnas las genero de forma dinamica ya que debo tener control de las propiedades y estilos de cada una como los anchos, fuentes, colores etc. y ademas siempre cambian la cantidad de columnas a mostrar.

El problema en cuestion es que por ejemplo con una tabla con 34 registros paginados de a 10, me muestra los 10 primeros y los respectivos links para las paginas siguientes, pero al querer cambiar de pagina me muestra la grilla en blanco.

El evento PageIndexChanged esta bien creado ya que si le coloco la propiedad AutoGenerateColumns en true entra al evento pero si no, no entra y me muestra la grilla en blanco.

Por favor necesito urgente que alguien me ayude con esto.

Desde ya muchas gracias.
  #2 (permalink)  
Antiguo 26/09/2005, 10:23
Avatar de Mickel  
Fecha de Ingreso: mayo-2002
Ubicación: Lima, Peru
Mensajes: 4.619
Antigüedad: 21 años, 11 meses
Puntos: 7
que codigo has puesto para el PageIndexChanged? Veamoslo...
__________________
No tengo firma ahora... :(
  #3 (permalink)  
Antiguo 26/09/2005, 15:51
 
Fecha de Ingreso: agosto-2004
Ubicación: Cordoba - Argentina
Mensajes: 6
Antigüedad: 19 años, 8 meses
Puntos: 0
Esta es la declaracion del DataGrid
Código:
<asp:datagrid id="dgHojaDatos" runat="server" Width="780" AllowPaging="True" AutoGenerateColumns="False"
CssClass="dgHojaDatos" OnPageIndexChanged="Grid_Change" 
CellPadding="4" BorderWidth="1px" BorderColor="#3366CC" BorderStyle="None" BackColor="White">
<FooterStyle ForeColor="#003399" BackColor="#99CCCC"></FooterStyle>
<SelectedItemStyle Font-Bold="True" ForeColor="#CCFF99" BackColor="#009999"></SelectedItemStyle>
<AlternatingItemStyle sClass="dgColumns_Alternate">
</AlternatingItemStyle>
<ItemStyle ForeColor="#003399" CssClass="dgColumns_Item" BackColor="White"></ItemStyle>
<HeaderStyle Font-Bold="True" ForeColor="#CCCCFF" CssClass="dgColumns_Header" BackColor="#003399"></HeaderStyle>
<PagerStyle VerticalAlign="Top" HorizontalAlign="Left" ForeColor="#003399" BackColor="#99CCCC" Mode="NumericPages"></PagerStyle>
</asp:datagrid>
Esta es la del evento

Código:
this.dgHojaDatos.PageIndexChanged += new System.Web.UI.WebControls.DataGridPageChangedEventHandler(this.Grid_Change);
Y este es el codigo del evento.

Código:
public void Grid_Change(Object sender, DataGridPageChangedEventArgs e) 
{
     dgHojaDatos.CurrentPageIndex = e.NewPageIndex;
     BindData();
}

el evento funciona perfectamente, pero solo si tengo la propiedad AutoGenerateColumns en True.
  #4 (permalink)  
Antiguo 26/09/2005, 21:24
Avatar de RootK
Moderador
 
Fecha de Ingreso: febrero-2002
Ubicación: México D.F
Mensajes: 8.004
Antigüedad: 22 años, 2 meses
Puntos: 50
De casualidad ya te aseguraste que tengas ésta propiedad..??

Cita:
<asp:datagrid id="dgHojaDatos" runat="server" Width="780" AllowPaging="True" AutoGenerateColumns="False"
CssClass="dgHojaDatos" OnPageIndexChanged="Grid_Change"
CellPadding="4" BorderWidth="1px" BorderColor="#3366CC" BorderStyle="None" BackColor="White" EnableViewState="True">
..
__________________
Nadie roba nada ya que en la vida todo se paga . . .

Exentrit - Soluciones SharePoint & Net
  #5 (permalink)  
Antiguo 27/09/2005, 16:42
 
Fecha de Ingreso: agosto-2004
Ubicación: Cordoba - Argentina
Mensajes: 6
Antigüedad: 19 años, 8 meses
Puntos: 0
ese no es el problema ....
  #6 (permalink)  
Antiguo 29/09/2005, 23:32
 
Fecha de Ingreso: octubre-2004
Ubicación: Santiago Chile
Mensajes: 119
Antigüedad: 19 años, 6 meses
Puntos: 0
Hola Damian DmN
A mi me paso algo tambien con un datagrid paginado, en el que desde el codebehind indicaba que cosas iba a poner en el datagrid. Por ejemplo si en el campo del dataset venia un true yo poniauna imagen.
Primero me paso que mostraba la primera pagina bien me iba a la segunda y nada y volvia a la primera y nada, raro !! de ahi puse lo del grid change y ya me salian los datos pero en la segunda pagina del grid no correspondia.
Lo que yo estaba haciendo era ver segun lo que venia en el dataset ponia una imagen, y solucione fijandome en lo que estaba en el datagrid. Osea le puse a las columnas del datagrid los dtaboun y luego segun ellos puse las imagenes.
Ahora tu dices que pones columnas en el datagrid segun lo que venga ... no se me ocurre
Lo otro que probe fue poner en un proceso el llenado de la grilla y lo llame desde el Grid_Change, tambien fijate en el page.istpostback
Y tambien fijarte si el enabledViewState este en true, asi viene por defecto.

Bueno a ver si estas ideas te ayudan en algo
suerte
__________________
_____________________________________
;-) Se hace lo que se puede
  #7 (permalink)  
Antiguo 30/09/2005, 06:49
 
Fecha de Ingreso: agosto-2004
Ubicación: Cordoba - Argentina
Mensajes: 6
Antigüedad: 19 años, 8 meses
Puntos: 0
Gracias, ya lo pude solucionar. Estaba llamando mal al metodo DataBind().
Gracias por todo.
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 04:50.