Ayuda con DataGrid ...

Este es el problema:
Tengo un Formulario(form1) en donde e puesto un Datagrid1 conectada a una tabla(cod, descripción, enero, febrero,..., diciembre, CantidadTotal, PrecioUnitario, Total).
Lo que quiero es que al seleccionar una fila (del datagrid1) esta se marque (hasta allí esta bien) y que los datos de estos campos de la fila seleccionada, a través de un botón (commandbutton), pasen a otro Formulario (form2) en donde cada dato se visualice en un textbox (serian 17 textbox en total) para poder editar toda esta única fila desde este form2.
Por favor díganme como puedo hacer para que trabaje de esta manera.Se los agradeceré muchísimo ya que es un trabajo que tengo que presentar en unos días.
Gracias
Ronald
[email protected]
Respuesta
Existe una propiedad del datagrid que te dice la fila que has seleccionado. Y creo recordar que te coge toda la fila en un array. Por lo que tendrás que decirle las columnas que quieres mediante el indice del array.
Echale un vistazo y me cuentas. Ahora mismo estoy de viaje y no puedo ayudarte con la solución en concreto

6 respuestas más de otros expertos

Respuesta
1
El data grid tiene una propiedad que se llama col.
Cuadno puelses el bonton commmand2
hace lo siguiente form2. text1=datagrid1.col(0)
Donde el cero es el valor de la columna del grid y así sucesibaamente
aumentando hasta 16 el valor ya que son las columnas que muestras
Un slaudo
Respuesta
1
Vamos al grano
DataGrid1. Columns(1).Text
Esto devuelve el valor dentro de una columna (la fila ya esta seleccionada por defecto al dar click en ella).
Así que al pasar al form2 le dices algo como esto:
En el evento dblclick del datagrid colocas:
form2.text1.text=DataGrid1.Columns(1).Text
¿Algo así, entiendes?
Al final editas todo y finalmente guardas los datos osea uhm eso ya va por parte tuya. ^_^
Buscas el código digamos y actualizas el registro luego actualizas el origen de datos del datagrid...
Bye
Respuesta
1
No entiendo porque quieres editarlos en otro form si tienes el datagrid, y para editarlos y solamente algunos.
Respuesta
1
Para traspasar los datos de un datagrid a varios textbox puedes utilizar la siguiente rutina:
For a = 0 To 17
form2.text1(a).Text = DBGrid1.Columns(a).Value
Next a
Con esta rutina lees la fila seleccionada y te la traspasa a los textbox
También puedes utilizar esta otra rutina:
form2.text1.text=dbgrid1.columns("cod").value
form2.text2.text=dbgrid1.columns("descripcion").value
etc
Respuesta
1
Si entendí bien
Es así
¿Tienes seleccionada la fila del datagrid no?
Entonces se los mandas de esta forma
form2.text1 = datagrid_fila_seleccionada
form2.text2 = datagrid_fila_seleccionada
Así con todos, sino lo que haces es tienes las claves principales seleccionadas por el datagrid.
Cuando apretás el command disparas otra consulta en el form2 y que te traiga devuelta todos los datos que quieres.
Respuesta
1
Antes que nada debo saber si es posible utilizar un msflexgrid en vez de un dbgrid, si es así avisame que te digo como hacer todo sencillamente.
Atentamente. Manuel Fernández.
PD: incluso como hacer que se seleccione y todo eso.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas