Ver Mensaje Individual
  #5 (permalink)  
Antiguo 27/09/2010, 22:51
jpmaiden
 
Fecha de Ingreso: febrero-2010
Mensajes: 16
Antigüedad: 14 años, 9 meses
Puntos: 0
Respuesta: Como puedo identificar un boton dentro de un gridview (hay 2 botones)

bueno, sere un poco mas claro

resulta que yo agrego los botones en modo grafico de esta forma:

gridview -> editar columnas -> commandfield -> "seleccionar"

edito el nombre y en vez de seleccionar le pongo "eliminar", por lo tanto, cuando hago doble click en el gridview me envia al codebehing al metodo "GridView1_SelectedIndexChanged".

(ojo q selecciono el gridview, no puedo seleccionar el boton como me decias tu hace un momento).

entonces, cuando hay un boton (en este caso solo eliminar) es simple ya que el evento GridView1_SelectedIndexChanged es igual al del boton eliminar, por eso no necesito identificar que boton fue apretado (ya q solo existe uno).

asi lo hacia yo hasta ahora y todo funcionaba de maravilla.

mi problema ahora es cuando coloco otro boton en el gridview, en este caso el boton "modificar", este lo pongo de la misma forma en que puse el boton eliminar, pero resuta que como no puedo seleccionar el boton en forma particular y en vfez de eso se selecciona solo el gridview, tanto el boton eliminar como modificar me envian al mismo metodo (que es GridView1_SelectedIndexChanged).

por eso pregunto, como es posible identificar que boton se presiono.

por si sirve de algo aca esta el codigo en ASPX


Código ASP:
Ver original
  1. <asp:GridView ID="GridView1" runat="server" BackColor="LightGoldenrodYellow"
  2.             BorderColor="Tan" BorderWidth="1px" CellPadding="2" ForeColor="Black"
  3.             Width="663px"  >
  4.             <Columns>
  5.                 <asp:CommandField ButtonType="Button" HeaderText="Modificar"
  6.                     SelectText="Modificar" ShowSelectButton="True" />
  7.                 <asp:CommandField ButtonType="Button"  HeaderText="Eliminar"  
  8.                     InsertImageUrl="~/Imagenes/eliminar.png" SelectText="Eliminar"
  9.                     ShowSelectButton="True" UpdateImageUrl="~/Imagenes/eliminar.png" />
  10.             </Columns>
  11.             <FooterStyle BackColor="Tan" />
  12.             <PagerStyle BackColor="PaleGoldenrod" ForeColor="DarkSlateBlue"
  13.                 HorizontalAlign="Center" />
  14.             <SelectedRowStyle BackColor="DarkSlateBlue" ForeColor="GhostWhite" />
  15.             <HeaderStyle BackColor="Tan" Font-Bold="True" />
  16.             <AlternatingRowStyle BackColor="PaleGoldenrod" />
  17.         </asp:GridView>

y aca el metodo que me envia al hacer doble click sobre el gridview

Código ASP:
Ver original
  1. Protected Sub GridView1_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles GridView1.SelectedIndexChanged
  2.  
  3.         Dim id As Integer
  4.         Dim validar As Integer
  5.  
  6.         id = Convert.ToInt32(GridView1.Rows(Convert.ToInt32(GridView1.SelectedIndex.ToString)).Cells(2).Text.ToString)
  7.  
  8.         Dim borra As Usuarios = New Usuarios(Nombre.Text, Apellido.Text, Rut.Text, _
  9.                                                    pass1.Text, mail.Text, _
  10.                                                    Convert.ToInt32(tipo_usuario.SelectedValue), id)
  11.         validar = borra.eliminarUsuario()
  12.  
  13.         Cargar_grid()
  14.     End Sub

gracias de antemano

SALUDOS::