Foros del Web » Programación para mayores de 30 ;) » .NET »

Problema puntual con DataGrid

Estas en el tema de Problema puntual con DataGrid en el foro de .NET en Foros del Web. Hola a todos, ya he realizado varios trabajos con DataGrid y siempre que necesité provocar algún evento desde un item de la grilla utilicé el ...
  #1 (permalink)  
Antiguo 22/04/2005, 09:57
 
Fecha de Ingreso: enero-2002
Mensajes: 136
Antigüedad: 22 años, 3 meses
Puntos: 1
Problema puntual con DataGrid

Hola a todos, ya he realizado varios trabajos con DataGrid y siempre que necesité provocar algún evento desde un item de la grilla utilicé el control
<asp:ButtonColumn>. Siempre anduvo todo bien, sin embargo no me gusta la presentación, ya sea ButtonType="LinkButton" o ButtonType="PushButton". Por eso ahora quiero hacer el link desde una imagen y para eso estoy usando

<asp:templatecolumn >
<itemtemplate>
<asp:ImageButton ImageUrl="carrito.gif"
CommandName="dtAdd"
runat="server" />
</itemtemplate>
</asp:templatecolumn>

Ahora la cosa se complica porque, de acuerdo a como esté el EnableViewState en False o True, la paginación no anda o si anda la paginación no captura el evento en la parte de código o no logró mantener desde que item se produjo el evento y otras variantes por el estilo. Sólo logré que ande bien sacándole la paginación y con EnableViewState="false". Pero quisiera hacerlo con paginación.
Alguien puede aportar un poco más de claridad a ésto.
Gracias
  #2 (permalink)  
Antiguo 22/04/2005, 10:09
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
Hacer una páginacion que trae el datagrid por default debes mantener el state (EnableViewState = true) porque en en caso contrario cuando cambies de página no tomaría la referncia y por lo tanto no paginaria.

La otra forma es paginar todo de forma manual y la verdad no es algo sencillo porque no lo harías con postback si no directamente con querystring.. algo como lo que se hacía con asp normal.

Salu2
__________________
Nadie roba nada ya que en la vida todo se paga . . .

Exentrit - Soluciones SharePoint & Net
  #3 (permalink)  
Antiguo 22/04/2005, 10:25
 
Fecha de Ingreso: enero-2002
Mensajes: 136
Antigüedad: 22 años, 3 meses
Puntos: 1
Correcto, para que ande la paginación debe estar en TRUE, pero en ese caso el evento disparado no es capturado por el handler. He puesto algunos response.write para seguirlo y no pasa por donde debería pasar.
  #4 (permalink)  
Antiguo 22/04/2005, 10:30
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
En tu caso para capturar que control fue el que dio click lo puedes hacer así:

Cita:
Private Sub DataGrid1_ItemCommand(ByVal source As Object, ByVal e As System.Web.UI.WebControls.DataGridCommandEventArgs ) Handles DataGrid1.ItemCommand
If e.CommandName = "dtAdd" Then
'tu codigo...

End If
End Sub
Salu2
__________________
Nadie roba nada ya que en la vida todo se paga . . .

Exentrit - Soluciones SharePoint & Net
  #5 (permalink)  
Antiguo 22/04/2005, 10:43
 
Fecha de Ingreso: enero-2002
Mensajes: 136
Antigüedad: 22 años, 3 meses
Puntos: 1
Rootk, lo tengo así, pues de hecho todos los DataGrid que hice funcionan sin problemas. El tema es como lo puse en el primer post, al usar el control que me permite poner una imagen para el link, ahí es que no anda.
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 16:23.