Hola, tengo una duda en una aplicacion k estoy realizando, en la k utilizo un datagrid con varias columnas y una de ellas es un itemTemplete donde tengo un control LinkButton con el nombre de una persona el cual me lleva a otra pagina donde despliego la info del registro seleccionado pasando la clave de la persona selecionada como un parametro.
Las demas columnas son una clave y datos de la persona en general.
El datagrid lo tengo paginado, y cuando avanzo de pagina todo lo hace perfecto, me cambia de pagina y muestra mas personas en el grid, solo k cuando selecciono un item(una persona) de otra pagina de el grid, me toma una clave diferente de la persona k he seleccionado, y esto es debido a k vuelve a cargarse el grid.
Asi esta el codigo:
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
CargaGrid()
End Sub
'Selecciono una persona y abro una ventana pasando la clave
Private Sub dgEmpleados_ItemCommand(ByVal source As System.Object, ByVal e As System.Web.UI.WebControls.DataGridCommandEventArgs) Handles dgEmpleados.ItemCommand
Session("clave") = dgEmpleados.DataKeys(e.Item.ItemIndex)
'Abro la nueva ventana
AbrePersona()
End Sub
'Cambio de pagina en el datagrid
Private Sub dgEmpleados_PageIndexChanged(ByVal source As Object, ByVal e As System.Web.UI.WebControls.DataGridPageChangedEventArgs) Handles dgEmpleados.PageIndexChanged
dgEmpleados.CurrentPageIndex = e.NewPageIndex
dgEmpleados.DataBind()
End Sub
En resumen es k cada vez k avanzo de pagina en el grid se carga el grid nuevamente y al momento de seleccionar una persona no me da la clave k tiene en ese registro.
Espero me hayan entendido, y me puedan dar alguna recomendacion de como soluciono esto.