Ver Mensaje Individual
  #4 (permalink)  
Antiguo 25/09/2013, 07:45
julioc6969
 
Fecha de Ingreso: enero-2012
Mensajes: 46
Antigüedad: 12 años, 3 meses
Puntos: 3
De acuerdo Respuesta: Pasar datos de grilla

En tu aspx debes de tener un item template asi imagino yo:

<asp:TemplateField Visible="true" HeaderText="">
<ItemTemplate>
<asp:ImageButton CommandName="Revisar" CommandArgument="<%# CType(Container,GridViewRow).RowIndex %>" ID="imbtn_actuacion_revisada" runat="server" ImageUrl="~/Imagenes/Iconos/Check.jpg" Height="17px" Width="17px" />
</ItemTemplate>
</asp:TemplateField>

Si te fijas el commandName es el que te indicara cual sera el boton que se presionó, luego tu para capturarlo tienes que ir al Code Behind y capturarlo con el metodo:

Protected Sub GridView_RowCommand(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewCommandEventArgs ) Handles GridView.RowCommand

'Verificar cual item template fue el que se acciono ese commandName es el que especificaste como atributo en el itemtemplate, el nombre que tu le diste
If e.CommandName = "Revisar" Then

'aca envias a la otra pagina tal y como lo estas haciendo a diferencia que pasas el id como parametro, obteniendolo de la siguiente manera:
'obtenlo en string y luego haces el parse para integer en la pagina que lo recibiras
Dim varibleId as String=Me.GridView.Rows(e.CommandArgument).Cells(1 ).Text

Response.Write("<script>window.open('wf_pagina_nue va.aspx?id="+variableId+"','PaginaNueva','resizabl e=yes,toolbar=no,scrollbars=yes');</script>")
'donde e.CommandArguments es el selectedIndex por decirlo asi y Cells(1) es la celda uno que en mi caso alli tengo el Id, en tu caso puede ser otra.


End If

End Sub

De esta manera podrias enviar como parametro el id capturado con el itemTemplate, espero que me hayas entendido, sino cualquier cosa pregunta :) , igual las disculpas del caso si hay algun error de dedo por alli o de prog
para adaptarlo a C# es facil, para crear el evento buscalo y añadelo tu, para no estar luchando para ver como sera la declaracion y toda la cosa, cambia la declaracion de la variable y prueba el response.write.

Saludos