• Viernes 8 de Noviembre de 2024, 16:13

Autor Tema:  uso de un button dentro de un datagrid  (Leído 1577 veces)

Nancy1981

  • Nuevo Miembro
  • *
  • Mensajes: 2
    • Ver Perfil
uso de un button dentro de un datagrid
« en: Martes 22 de Julio de 2008, 17:23 »
0
Hola señores,
he buscado por todo intenet y no he encontrado respuesta espero me puedan ayudar
estoy usando vb 2003

mi problema es el siguiente yo tengo un datagrid que lo cargo con databind
Dim dgr As DataGridItem
            Dim capadatos = New CapaDatos.accesoDatos(cod_sede)
            Dim ds As System.Data.DataSet
            Dim resultado As String
               Dim parametros(2) As String
                parametros(0) = generales.pplaca
                parametros(1) = generales.pcliente
                parametros(2) = generales.porden
                ds = capadatos.EjecutaSpDs("Topss.mcm_co_alternativos", parametros)
                    grid.DataSource = ds
                    grid.DataBind()

aqui no tengo ningun problema se carga super bien,
 luego le agregue otra columna donde le ingrese dentro de un  template un button, lo que quiero lograr es q ala hacer clic en ese boton pueda eliminar la fila del data grid,
pero mi problema es que no se como hacerlo me falta un poco mas de conocimiento yo simepre he programado en asp clasico y esto es totalmente nuevo para mi y me confunde.
lo que trate de hacer es que en el html le pongo un evento onclick u llamo a una funcion asi
<asp:TemplateColumn HeaderText="Deshacer">
<ItemTemplate>
<asp:Button id="Button1" onclick="EliminaAlternativos" runat="server" CssClass="botom" CausesValidation="false"
Text="Deshacer"></asp:Button>   </ItemTemplate>

pero cuando llego a la funcion ni idea de como caturar el valor de la columna que tiene la fila que quiero eliminar, osea como le paso el parametro para q la funcion sepa q esa es la fila y ese es el id q hay q eliminar

es desperante
he hecho miles de cosas y me manda error

aqui esta mi funcion

    Public Sub EliminarAlternativos(ByVal sender As System.Object, ByVal e As System.EventArgs)
        Dim Button1 As Button = CType(sender, Button)

        Dim dgr As DataGridItem
        For Each dgr In Me.Datagrid6.Items
            If Button1.AccessKey Then
                Dim id As Label = CType(dgr.Item.Cells(2).Controls(1), Label)
                Dim ida As Integer = id.Text
                Response.Write(ida)

            End If
        Next

        ''Dim dg As DataGridCommandEventArgs
        ''Dim Button1 As Button = CType(sender, Button)
        ''Dim id As String = CType(e.Item.Cells(2).Controls(0), TextBox).Text

    End Sub
muchas gracias por la ayuda

Nancy1981

  • Nuevo Miembro
  • *
  • Mensajes: 2
    • Ver Perfil
Re: uso de un button dentro de un datagrid
« Respuesta #1 en: Martes 22 de Julio de 2008, 17:52 »
0
ya lo logre, la funcion va asi
    Public Sub EliminaAlternativos(ByVal sender As System.Object, ByVal e As System.EventArgs)
        Dim Button1 As Button = CType(sender, Button)
        Dim row As DataGridItem = CType(Button1.NamingContainer, DataGridItem)
        Dim dgr As DataGridItem
        dgr = Me.Datagrid6.Items(CInt(row.ItemIndex.ToString))
        Dim id As Label = CType(dgr.Cells(2).Controls(1), Label)

    End Sub

solo queda tomar el valor y hacer el delete

bye