none
Actualizar Textbox's Al traer un registro de un grid RRS feed

  • Pregunta

  • Hola, Estoy haciendo un sistema en el cual tengo que traer datos de una busqueda con un filtro en un grid. Todo muy bien, pero quiero que al hacer double click este se vaya a mi form1 y me actualize los campos Ej:

    'Grid' Form2

    l ID  l Nombre l Edad l Sexo  l 

     01       Luis        15      M       

     02    Matias      15       M     

    ' Text box ' Form1

    ( txt_id ) ( txt_nom ) ( txt_edad ) ( txt_sex )

    En mi form1 estan los txt ya relacionados, al darle double click a una celda, este me arrastra el resultado, y me muestra lo que quiero. Si en mi

    txt = Rows1( seria mi ID) - Como hago para que los demas Txt se actualizen por ese campo clave? Es decir, Al ponerse (ID 1) en mi txt_ID, los demas automaticamente se llenen. Se podra esto?

    mi codigo:

    Private Sub dgv_datos_CellDoubleClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles dgv_notas.CellDoubleClick
    
            Form1.txt_ID.Text = dgv_datos.Rows(e.RowIndex).Cells(0).Value.ToString
            Form1.txt_Nomb.Text = dgv_datos.Rows(e.RowIndex).Cells(1).Value.ToString
            Form1.txt_edad.Text = dgv_datos.Rows(e.RowIndex).Cells(2).Value.ToString
            Form1.txt_sexo.Text = dgv_datos.Rows(e.RowIndex).Cells(3).Value.ToString
    Esto funciona, pero al moverme entre los registros me suelta un error. :s

    jueves, 3 de enero de 2013 14:56

Todas las respuestas

  •  Hola !

      Puedes probar con:

            Form1.txt_ID.Text = dgv_datos.CurrentRow.Cells[0].Value.ToString
            Form1.txt_Nomb.Text = dgv_datos.CurrentRow.Cells[1].Value.ToString
            Form1.txt_edad.Text = dgv_datos.CurrentRow.Cells[2].Value.ToString
            Form1.txt_sexo.Text = dgv_datos.CurrentRow.Cells[3].Value.ToString


      S A L U D O S !          msico.gif (40541 bytes)

       R L J

       "No olvides marcar como respuesta la mejor opción ó votar como util si te fue de ayuda"

    jueves, 3 de enero de 2013 15:31
  • no es buena la tecnica que usas para pasar los datos de un form al otro

    [WinForms] Edición Empleados

    analiza el articulo alli aplcia justo la forma de edicion que comentas quieres implementar, pero no se pasa toda la info de un form a otro, sino solo lo necesario

    ademas para actualizar el form se recarga el grid completo para mostrar la actualizacion que tenga la db

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina

    jueves, 3 de enero de 2013 15:39
  •  Hola !

      Puedes probar con:

            Form1.txt_ID.Text = dgv_datos.CurrentRow.Cells[0].Value.ToString
            Form1.txt_Nomb.Text = dgv_datos.CurrentRow.Cells[1].Value.ToString
            Form1.txt_edad.Text = dgv_datos.CurrentRow.Cells[2].Value.ToString
            Form1.txt_sexo.Text = dgv_datos.CurrentRow.Cells[3].Value.ToString

    Eso funciona, pero lo que hace es arrastrarme, pero no me actualiza los registros, es decir, lo monta pero no los ejecuta y eso hace que al querer moverme de registro me sale este error:

    En mi form estoy viendo el Id 1, pero si me traigo el ID 5 me lo muestra pero si intento moverme de ahi al registro de ID6 o retroceder al ID4 me sale esto:

    "La columna 'ID' está restringida para ser única. Ya está presente el valor '5'."


    • Editado Maykol'17 jueves, 3 de enero de 2013 15:44
    jueves, 3 de enero de 2013 15:43
  • En mi form estoy viendo el Id 1, pero si me traigo el ID 5 me lo muestra pero si intento moverme de ahi al registro de ID6 o retroceder al ID4 me sale esto:

    no entiendo que tiene que ver el arrastrar o mover en la explciacion que proporcionas

    se supone que usas evento como ser CellClick o CellDoubleClick para seleccionar una row y editarla en otro formulario

    pero no que te mueves o arrastras nada

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina

    jueves, 3 de enero de 2013 17:38
  • Les explico mejor:

    Todo comienza Aqui:

    Este es el grid que yo voy a hacer DoubleClick en la Fila y te me va a mostrar en mi Form1, que es este de abajo:

    Como pueden ver,  Son los mismos campos (Encabezado y el Grid). Lo que quiero es traerme la informacion del Grid a Esta pantalla. Pensaba hacerlo por el campo clave (Numero de Devolución). Pero es como si solo se reemplazara y en verdad no me tomara el valor. Tengo mis relaciones y todo, pero aun asi no tengo ni idea.


    Edit: Me interesa que se actualize solo, ya que hay campos que estan relacionados en el form pero no estan presentes en el Grid.. ya que son otras tablas
    • Editado Maykol'17 jueves, 3 de enero de 2013 18:12
    jueves, 3 de enero de 2013 18:05