Pero no toma los valores que que introduzco.  Es decir, se queda con el mismo valor que tenía el grid antes de editarlo.  Este es mi código:
Código:
  
Se supone que la variable Meta debería tomar el valor nuevo que yo introduzca en la columna / fila específica del grid.  Cuando lo corrí paso a paso me dí cuenta de que no toma el nuevo valor, por tanto el udate a la tabla se realiza con los mismos valores.   Private Sub grid_UpdateCommand(ByVal source As Object, ByVal e As System.Web.UI.WebControls.DataGridCommandEventArgs) Handles grid.UpdateCommand
        Dim metaTxt As System.Web.UI.WebControls.TextBox = New System.Web.UI.WebControls.TextBox
        metaTxt = e.Item.Cells(2).Controls(0)
        Dim CodigoTxt As System.Web.UI.WebControls.TextBox = e.Item.Cells(0).Controls(0)
        Dim codigo As String = Val(CodigoTxt.Text)
        Dim meta As String = metaTxt.Text
        Dim tmp As String = e.Item.Cells(2).Text
        '--------------------------------------------------------------
        Dim BD As Mdg.CBaseDatos = New CBaseDatos
        Dim sSql As String
        BD.Conectar()
        BD.Drd = BD.Query("Begin Transaction") : BD.Drd.Close()
        sSql = "update segd_objetivos_x_posicion set Factor_Proyectado = " & meta & _
                " where Numero_Colectivo_posicion = " & codigo & ""
        BD.Drd = BD.Query(sSql)
        BD.Drd.Close()
        BD.Drd = BD.Query("Commit") : BD.Drd.Close()
        BD.Desconectar()
        grid.EditItemIndex = -1
        fillgrid()
    End Sub
¿Qué estaré haciendo mal?
 
 
 nos vemos 
 
 
