Autor Tema: [Resuelto] Insertar fila en DataGridView [Ayuda]  (Leído 29571 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado Darkness

  • The Communiter-
  • *
  • Mensajes: 2147
  • The Darkness
    • Diseño y Programaciòn Web Profesional
[Resuelto] Insertar fila en DataGridView [Ayuda]
« : febrero 23, 2010, 11:34:35 am »
Bueno pues tengo un problemilla con la edicion en un datagrid



Estoy elaborando una aplicacion que genera pedidos para su posterior facturacion, en la creacion del pedido no tengo ningun problema, pero al momento de la edidion de un pedido me he encontrado con una dificultad.


el escenario es el siguiente...


Tengo un dataset el cual aplico al grid

Me.DataGridView1.DataSource = OdatasetDetallePedido
Me.DataGridView1.DataMember = "DETALLEPEDIDO"





lo que necesito es que el contenido de los text box al presionar el boton guardar se agrege la linea al datagrid y posteriormente actualizarlo en la tabla fisica.

creo que el inconveniente es por que el grid esta enlazado
Gracias de antemano
« Última Modificación: febrero 23, 2010, 03:42:29 pm por Darkness »
La Muerte Simplemente es el Despertar de Un Sueño Lleno de Falsedades e hipocrecias.
"Larga Vida Al Heavy Metal"

Iron Maiden Discografia DD

-GoldeN-

  • Visitante
Re:Insertar fila en DataGridView [Ayuda]
« Respuesta #1 : febrero 23, 2010, 12:20:27 pm »
Hey que ondas men, aqui la solucion, creo que esto necesitas, yo lo hice en un proyecto pero de gridview a gridview, pero ha de ser lo mismo con textbox

Me.DataGridViewX1.Rows.Add(tutextbox.text, tuotrotextobox.text etcc....)

Saludos, Espero te sirva!!..

Desconectado Darkness

  • The Communiter-
  • *
  • Mensajes: 2147
  • The Darkness
    • Diseño y Programaciòn Web Profesional
Re:Insertar fila en DataGridView [Ayuda]
« Respuesta #2 : febrero 23, 2010, 01:12:53 pm »
Hey que ondas men, aqui la solucion, creo que esto necesitas, yo lo hice en un proyecto pero de gridview a gridview, pero ha de ser lo mismo con textbox

Me.DataGridViewX1.Rows.Add(tutextbox.text, tuotrotextobox.text etcc....)

Saludos, Espero te sirva!!..

No man no se puede agregar filas ed esta forma cuando se el datagrid esta enlazado a datos

La Muerte Simplemente es el Despertar de Un Sueño Lleno de Falsedades e hipocrecias.
"Larga Vida Al Heavy Metal"

Iron Maiden Discografia DD

Desconectado FLEB_JR

  • Sv Full Member
  • *
  • Mensajes: 578
Re:Insertar fila en DataGridView [Ayuda]
« Respuesta #3 : febrero 23, 2010, 01:25:49 pm »
DataGridView.AllowUserToAddRows (Propiedad)
Obtiene o establece un valor que indica si se muestra al usuario la opción de agregar filas.

Espacio de nombres: System.Windows.Forms
Ensamblado: System.Windows.Forms (en system.windows.forms.dll)

Código: [Seleccionar]
Dim instance As DataGridView
Dim value As Boolean

value = instance.AllowUserToAddRows

instance.AllowUserToAddRows = value

Fuente:
http://msdn.microsoft.com/es-es/library/system.windows.forms.datagridview.allowusertoaddrows%28VS.80%29.aspx

Aca hay un tema que tratan en este foro parecido al tuyo, chequealo haber que ondas ahi:
http://social.msdn.microsoft.com/Forums/es-ES/vcses/thread/d4e8c7b0-c9dd-40dd-a419-83bab94bbcfa
« Última Modificación: febrero 23, 2010, 01:34:33 pm por FLEB_JR »
100% Barcita...  
†  †  La Iglesia no se vende a nadie la Iglesia solo esta comprometida solo con el Reino de DIOS...  † †

Desconectado madolfo

  • Sv Member
  • ***
  • Mensajes: 155
Re:Insertar fila en DataGridView [Ayuda]
« Respuesta #4 : febrero 23, 2010, 02:46:27 pm »
Bueno pues tengo un problemilla con la edicion en un datagrid



Estoy elaborando una aplicacion que genera pedidos para su posterior facturacion, en la creacion del pedido no tengo ningun problema, pero al momento de la edidion de un pedido me he encontrado con una dificultad.


el escenario es el siguiente...


Tengo un dataset el cual aplico al grid

Me.DataGridView1.DataSource = OdatasetDetallePedido
Me.DataGridView1.DataMember = "DETALLEPEDIDO"





lo que necesito es que el contenido de los text box al presionar el boton guardar se agrege la linea al datagrid y posteriormente actualizarlo en la tabla fisica.

creo que el inconveniente es por que el grid esta enlazado
Gracias de antemano



vaya men lo q tenes q hacer es crear esto

For Each Fila As DataRow In AQUI_PONES_TU_DATASET
'For Each Fila As DataRow In miDataSet.Tables(0).Rows
            Select Case Fila.RowState

                Case DataRowState.Added
                    MsgBox("Agrego estos valores: " + Fila(0).ToString + " =  " + Fila(1).ToString)
                Case DataRowState.Modified
                    MsgBox("Modifico")
                Case DataRowState.Deleted
                    MsgBox("Elimino")
            End Select
        Next

        'dtConfigurarPrecios.AcceptChanges()
         AQUI_PONES_TU_DATASET.AcceptChanges()

Con esta rutina podras saber que elementos se han agregado a tu datagrid y mandar a guardar solamente los nuevos.

Esto lo tendrias q poner en el boton de guardar. Hace la prueba y me avisas  :thumbsup:

Desconectado Darkness

  • The Communiter-
  • *
  • Mensajes: 2147
  • The Darkness
    • Diseño y Programaciòn Web Profesional
Re:Insertar fila en DataGridView [Ayuda]
« Respuesta #5 : febrero 23, 2010, 03:02:40 pm »
Gracias man por responder...

pero con ese script solamente podria ver los cambios que el grid sufrio, y realmente lo que queiro es adicionar una nueva fila al dataset y po ende actualizarlo en el datagrid
La Muerte Simplemente es el Despertar de Un Sueño Lleno de Falsedades e hipocrecias.
"Larga Vida Al Heavy Metal"

Iron Maiden Discografia DD

Desconectado madolfo

  • Sv Member
  • ***
  • Mensajes: 155
Re:Insertar fila en DataGridView [Ayuda]
« Respuesta #6 : febrero 23, 2010, 03:09:30 pm »
Gracias man por responder...

pero con ese script solamente podria ver los cambios que el grid sufrio, y realmente lo que queiro es adicionar una nueva fila al dataset y po ende actualizarlo en el datagrid

pues al ver los cambios sufridos, lo podrias mandar a guardar directamente a la tabla fisica y luego llamar la rutina con la cual llenas el datagrid y ya tendrias tu dataset con los nuevos registros

Desconectado tekun

  • -^- Elite Silver -^-
  • The Communiter-
  • *
  • Mensajes: 3221
  • Han convertido mi casa en cueva de mercaderes!!!!
    • www.tekun.es
Re:Insertar fila en DataGridView [Ayuda]
« Respuesta #7 : febrero 23, 2010, 03:26:42 pm »
a pos tonces, agrega la fila a tu "enlace de datos"...

yo supondría que tu enlace de datos es un dataTable común

Me.DataGridView1.DataSource = OdatasetDetallePedido
Me.DataGridView1.DataMember = "DETALLEPEDIDO"

OdatasetDetallePedido debería ser un dataset con alguna tabla llamada DETALLEPEDIDO, tonces lo que debes hacer es crear un DataRow del dataTable contenido en este dataset OdatasetDetallePedido y luego agregarlo al dataTable DETALLEPEDIDO y listo!...
como siento muy confuso la teoría te dare las cucharaditas de la solución...

Citar
dim dtRow as datarow
dtRow=OdatasetDetallePedido.Tables("DETALLEPEDIDO").NewRow
dtrow("Articulo") = textBoxArticulo.text
dtrow("Cantidad") = textBoxCantidad.text
' -- bla bla bla --
OdatasetDetallePedido.Tables("DETALLEPEDIDO").Rows.Add(dtRow)
lo difícil lo hago rápido, con lo imposible, casi siempre me tardo un poquito

Desconectado Darkness

  • The Communiter-
  • *
  • Mensajes: 2147
  • The Darkness
    • Diseño y Programaciòn Web Profesional
Re:Insertar fila en DataGridView [Ayuda]
« Respuesta #8 : febrero 23, 2010, 03:42:13 pm »
LoL

Gracias tekun...

me sirvio de maravilla


saludos


La Muerte Simplemente es el Despertar de Un Sueño Lleno de Falsedades e hipocrecias.
"Larga Vida Al Heavy Metal"

Iron Maiden Discografia DD

Desconectado tekun

  • -^- Elite Silver -^-
  • The Communiter-
  • *
  • Mensajes: 3221
  • Han convertido mi casa en cueva de mercaderes!!!!
    • www.tekun.es
Re:[Resuelto] Insertar fila en DataGridView [Ayuda]
« Respuesta #9 : febrero 23, 2010, 03:48:03 pm »
pregunta?

porque utilizas textBox para agregar al gridView?, porque no haces que el usuario escriba y elija en el gridView?
lo difícil lo hago rápido, con lo imposible, casi siempre me tardo un poquito

Desconectado Darkness

  • The Communiter-
  • *
  • Mensajes: 2147
  • The Darkness
    • Diseño y Programaciòn Web Profesional
Re:[Resuelto] Insertar fila en DataGridView [Ayuda]
« Respuesta #10 : febrero 23, 2010, 03:50:47 pm »
pregunta?

porque utilizas textBox para agregar al gridView?, porque no haces que el usuario escriba y elija en el gridView?

Pues si ves la codificacion de los articulos es bastante compleja asi mismo se usan niveles de precios, entonces seria tedioso que el usuario escribiera los codigos de los articulos a adicionar.

Y me es mas facil realizar las validaciones respectivas de este modo  x_x
La Muerte Simplemente es el Despertar de Un Sueño Lleno de Falsedades e hipocrecias.
"Larga Vida Al Heavy Metal"

Iron Maiden Discografia DD

Desconectado tekun

  • -^- Elite Silver -^-
  • The Communiter-
  • *
  • Mensajes: 3221
  • Han convertido mi casa en cueva de mercaderes!!!!
    • www.tekun.es
Re:[Resuelto] Insertar fila en DataGridView [Ayuda]
« Respuesta #11 : febrero 23, 2010, 04:36:15 pm »
ahh bueno, si tu solución es que el usuario escriba esa codificación, entonces no es una opción "agradable/amigable"


yo te propuse escribir y elegir en el gridView, por decirte algo, la cantidad[pedido] del producto la debe escribir y en otros casos hay campos en los que debe tener la oportunidad de "elegir" de un catálogo, te dejo la inquietud de esa posibilidad, porque si se puede hacer!
lo difícil lo hago rápido, con lo imposible, casi siempre me tardo un poquito

Desconectado Darkness

  • The Communiter-
  • *
  • Mensajes: 2147
  • The Darkness
    • Diseño y Programaciòn Web Profesional
Re:[Resuelto] Insertar fila en DataGridView [Ayuda]
« Respuesta #12 : febrero 23, 2010, 04:46:51 pm »
ahh bueno, si tu solución es que el usuario escriba esa codificación, entonces no es una opción "agradable/amigable"


yo te propuse escribir y elegir en el gridView, por decirte algo, la cantidad[pedido] del producto la debe escribir y en otros casos hay campos en los que debe tener la oportunidad de "elegir" de un catálogo, te dejo la inquietud de esa posibilidad, porque si se puede hacer!


Te comento:

El usuario desplegara un catalogo para elegir el codigo del articulo pulsando doble click o mediante una tecla de funcion [Sobre el TxtArticulo]
al seleccionar el articulo se llenara el campo: Articulo, Descripcion, Precio, y el focus quedara en cantidad para que el usuario la escriba, luego al presionar el boton guardar, se adionara la linea al grid

Y pos tu idea me gusta, pero se me complica un poco el hecho de los eventos en cada una de las posiciones del cursor para poder desplegar el catalogo, mas que todo por esto es que decidi hacerlo de esta forma...

pero si tienes un ejemplito por ahi, me serviria para darle una lieda y posteriormente implementarlo

gracias y saludos

La Muerte Simplemente es el Despertar de Un Sueño Lleno de Falsedades e hipocrecias.
"Larga Vida Al Heavy Metal"

Iron Maiden Discografia DD

Desconectado tekun

  • -^- Elite Silver -^-
  • The Communiter-
  • *
  • Mensajes: 3221
  • Han convertido mi casa en cueva de mercaderes!!!!
    • www.tekun.es
Re:[Resuelto] Insertar fila en DataGridView [Ayuda]
« Respuesta #13 : febrero 23, 2010, 05:19:41 pm »
fijate que por cuestión de tiempo no puedo ayudarte en este momento, voy a ver que ondas mañana, te aviso...
lo difícil lo hago rápido, con lo imposible, casi siempre me tardo un poquito

Desconectado tekun

  • -^- Elite Silver -^-
  • The Communiter-
  • *
  • Mensajes: 3221
  • Han convertido mi casa en cueva de mercaderes!!!!
    • www.tekun.es
Re:[Resuelto] Insertar fila en DataGridView [Ayuda]
« Respuesta #14 : febrero 24, 2010, 10:30:57 am »
me voy a enfocar en el truco de poder seleccionar de un catálogo un código y pintarlo en una celda específica del gridView:

hay que manejar varios eventos del gridView, creo que para este ejemplo bastan los eventos: RowEnter y CellContentDoubleClick, creo que así se llaman....

obviamente tu ya sabes que posición de columna es donde pintarás el código que seleccionaremos del catálogo... la onda esta que al dar doble clic en la celda donde pintarás el código de la celda se presente el actual catálogo que tienes para seleccionar el producto y luego pintarlo en esa celda y los demás valores de la misma forma...

esa es una forma hay otras, utilizando un comboBox como control "editor" de la celda código de producto...
lo difícil lo hago rápido, con lo imposible, casi siempre me tardo un poquito