• Lunes 23 de Diciembre de 2024, 13:26

Autor Tema:  Ayuda Datagridview  (Leído 6609 veces)

pedroisma

  • Nuevo Miembro
  • *
  • Mensajes: 7
    • Ver Perfil
Ayuda Datagridview
« en: Martes 20 de Marzo de 2007, 19:01 »
0
Tengo un form1 con un datagridview y un form2 con varios textbox, deseo que cuando haga doble click sobre una fila del datagridview, los datos de la fila seleccionada se reflejen en sus respectivos texbox del form2. Me gustaria que me explicarais como puedo hacerlo ya que llevo bastante tiempo intentandolo y no encuentro la solución. Gracias

Cajami

  • Miembro MUY activo
  • ***
  • Mensajes: 298
    • Ver Perfil
Re: Ayuda Datagridview
« Respuesta #1 en: Martes 20 de Marzo de 2007, 20:25 »
0
hola, prueba con esto:

Código: Text
  1.     Private Sub DataGridView1_CellDoubleClick(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles DataGridView1.CellDoubleClick
  2.         Dim Fila_Seleccionada As Byte = CByte(Me.DataGridView1.CurrentCell.RowIndex)
  3.         Me.TextBox1.Text = Me.DataGridView1.Rows(Fila_Seleccionada).Cells(3).Value.ToString
  4.     End Sub
  5.  
  6.  
Lima - Perú

-------------------------------------------------------------------------------------------------------
"Persigue tus metas, tus objetivos, tus sueños, nunca t rindas si t caes 1000 veces levantat 1000 veces y sigue adelante..."

lencho

  • Miembro de PLATA
  • *****
  • Mensajes: 1076
    • Ver Perfil
Re: Ayuda Datagridview
« Respuesta #2 en: Miércoles 21 de Marzo de 2007, 12:30 »
0
Cita de: "Cajami"
hola, prueba con esto:

Código: Text
  1.     Private Sub DataGridView1_CellDoubleClick(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles DataGridView1.CellDoubleClick
  2.         Dim Fila_Seleccionada As Byte = CByte(Me.DataGridView1.CurrentCell.RowIndex)
  3.         Me.TextBox1.Text = Me.DataGridView1.Rows(Fila_Seleccionada).Cells(3).Value.ToString
  4.     End Sub
  5.  
  6.  
pero eso lo mostraria en el textbox que tenga el primer formulario, y hay que mostrarlo en el segundo formulario.

1. podrias mandarselo como parametro en el NEW
2. puedes mandarselos en un procedure aparte.

Citar
Private Sub DataGridView1_CellDoubleClick(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles DataGridView1.CellDoubleClick
       Dim Fila_Seleccionada As Byte = CByte(Me.DataGridView1.CurrentCell.RowIndex)
       dim vector_de_datos(2) as integer
       vector_de_datos(0) = Me.DataGridView1.Rows(Fila_Seleccionada).Cells(0).Value.ToString
       vector_de_datos(1) = Me.DataGridView1.Rows(Fila_Seleccionada).Cells(1).Value.ToString
       vector_de_datos(2) = Me.DataGridView1.Rows(Fila_Seleccionada).Cells(2).Value.ToString
       dim frm2 as new SegundoFormulario()
       frm2.cargardatos(vector_de_datos)
       frm2.show()
   End Sub

y en el procedure cargardatos

Citar
public sub cargardatos(vector_de_datos)
        textbox0.text = vector_de_datos(0)
        textbox1.text = vector_de_datos(1)
        textbox2.text = vector_de_datos(2)
end sub

BYTE
______________________________________________________________________________________
"No estoy de acuerdo con lo que dices, pero defenderé con mi vida tu derecho a expresarlo"

Cajami

  • Miembro MUY activo
  • ***
  • Mensajes: 298
    • Ver Perfil
Re: Ayuda Datagridview
« Respuesta #3 en: Miércoles 21 de Marzo de 2007, 14:34 »
0
Cita de: "lencho"
Cita de: "Cajami"
hola, prueba con esto:

Código: Text
  1.     Private Sub DataGridView1_CellDoubleClick(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles DataGridView1.CellDoubleClick
  2.         Dim Fila_Seleccionada As Byte = CByte(Me.DataGridView1.CurrentCell.RowIndex)
  3.         Me.TextBox1.Text = Me.DataGridView1.Rows(Fila_Seleccionada).Cells(3).Value.ToString
  4.     End Sub
  5.  
  6.  
pero eso lo mostraria en el textbox que tenga el primer formulario, y hay que mostrarlo en el segundo formulario.

1. podrias mandarselo como parametro en el NEW
2. puedes mandarselos en un procedure aparte.

Citar
Private Sub DataGridView1_CellDoubleClick(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles DataGridView1.CellDoubleClick
       Dim Fila_Seleccionada As Byte = CByte(Me.DataGridView1.CurrentCell.RowIndex)
       dim vector_de_datos(2) as integer
       vector_de_datos(0) = Me.DataGridView1.Rows(Fila_Seleccionada).Cells(0).Value.ToString
       vector_de_datos(1) = Me.DataGridView1.Rows(Fila_Seleccionada).Cells(1).Value.ToString
       vector_de_datos(2) = Me.DataGridView1.Rows(Fila_Seleccionada).Cells(2).Value.ToString
       dim frm2 as new SegundoFormulario()
       frm2.cargardatos(vector_de_datos)
       frm2.show()
   End Sub

y en el procedure cargardatos

Citar
public sub cargardatos(vector_de_datos)
        textbox0.text = vector_de_datos(0)
        textbox1.text = vector_de_datos(1)
        textbox2.text = vector_de_datos(2)
end sub

BYTE
hola, pero puede hacer referencia al formulario no crees *-)

Código: Text
  1.    Private Sub DataGridView1_CellDoubleClick(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles DataGridView1.CellDoubleClick
  2.        Dim Fila_Seleccionada As Byte = CByte(Me.DataGridView1.CurrentCell.RowIndex)
  3.        My.FrmOtroFormulario.TextBox1.Text = Me.DataGridView1.Rows(Fila_Seleccionada).Cells(3).Value.ToString
  4.    End Sub
  5.  

lo que trataba de decirle era como sacar la info del registro seleccionado en el DataGridView, nos vemos  :hola:
Lima - Perú

-------------------------------------------------------------------------------------------------------
"Persigue tus metas, tus objetivos, tus sueños, nunca t rindas si t caes 1000 veces levantat 1000 veces y sigue adelante..."

pedroisma

  • Nuevo Miembro
  • *
  • Mensajes: 7
    • Ver Perfil
Re: Ayuda Datagridview
« Respuesta #4 en: Miércoles 21 de Marzo de 2007, 18:05 »
0
Muchas gracias a los dos, funciona de las dos formas. Un saludo

pedroisma

  • Nuevo Miembro
  • *
  • Mensajes: 7
    • Ver Perfil
Re: Ayuda Datagridview
« Respuesta #5 en: Jueves 22 de Marzo de 2007, 10:04 »
0
Hola de nuevo. Si en vez de pasar la fila seleccionada del datagridview a texbox, quisiera hacerlo a otro datagridview que se encuentre en otro formuario abierto en vista detalle, como podria conseguirlo. Un saludo

Cajami

  • Miembro MUY activo
  • ***
  • Mensajes: 298
    • Ver Perfil
Re: Ayuda Datagridview
« Respuesta #6 en: Jueves 22 de Marzo de 2007, 16:03 »
0
hola, puedes hacerlo asi:

Código: Text
  1.    Private Sub DataGridView1_CellDoubleClick(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles DataGridView1.CellDoubleClick
  2.        Dim Fila_Seleccionada As Byte = CByte(Me.DataGridView1.CurrentCell.RowIndex)
  3.        My.FrmOtro_Formulario.DataGridView1.Rows(0).Cell(0).Value = Me.DataGridView1.Rows(Fila_Seleccionada).Cells(3).Value.ToString
  4.    End Sub
  5.  

si no me equivoco asi es  :D (es que ahorita no lo puedo probar) ahora si lo que quieres es primero agregar una fila al datagridview para despues poner alli tu info ps hazlo asi:

Código: Text
  1.    Private Sub DataGridView1_CellDoubleClick(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles DataGridView1.CellDoubleClick
  2.        Dim Fila_Seleccionada As Byte = CByte(Me.DataGridView1.CurrentCell.RowIndex)
  3.        My.FrmOtro_Formulario.DataGridView1.Rows.Add
  4.        My.FrmOtro_Formulario.DataGridView1.Rows(My.FrmOtro_Formulario.DataGridView1.Rows.Count -1).Cell(0).Value = Me.DataGridView1.Rows(Fila_Seleccionada).Cells(3).Value.ToString
  5.    End Sub
  6.  

Recordar que Count nos trae el total de registros en el datagridview y le restamos 1 porque Count como da el total empieza en 1,2,3.... y en el datagridview los registros empiezan por 0,1,2,..., Cell es la columna de ese registro, pruebalo y nos comentas, nos vemos  :hola:
Lima - Perú

-------------------------------------------------------------------------------------------------------
"Persigue tus metas, tus objetivos, tus sueños, nunca t rindas si t caes 1000 veces levantat 1000 veces y sigue adelante..."

pedroisma

  • Nuevo Miembro
  • *
  • Mensajes: 7
    • Ver Perfil
Re: Ayuda Datagridview
« Respuesta #7 en: Jueves 22 de Marzo de 2007, 17:11 »
0
Hola Cajami: Cuando inserto el codigo primero me da el siguiente error: "El índice estaba fuera de intervalo, debe ser un valor no negativo e inferior al tamaño de la colección", y cuando inserto el codigo segundo me dice que no se pueden agregar filas en datos enlazados. Yo lo que realmente quierohacer en dos form es lo mismo que se hace en un mismo formulario con dos datagridview, uno abierto en forma de grilla y el otro en vista detalle, que cuando clicleas una fila de la grilla automoticamente se situa el registro correcto en vista detalle.  Un saludo

Cajami

  • Miembro MUY activo
  • ***
  • Mensajes: 298
    • Ver Perfil
Re: Ayuda Datagridview
« Respuesta #8 en: Jueves 22 de Marzo de 2007, 17:43 »
0
hola, disculpa mi ignorancia, a que te refieres en vista de detalle???? a en vez de usar datagridview usar controles como textbox, label, etc???? :unsure:
Lima - Perú

-------------------------------------------------------------------------------------------------------
"Persigue tus metas, tus objetivos, tus sueños, nunca t rindas si t caes 1000 veces levantat 1000 veces y sigue adelante..."

pedroisma

  • Nuevo Miembro
  • *
  • Mensajes: 7
    • Ver Perfil
Re: Ayuda Datagridview
« Respuesta #9 en: Jueves 22 de Marzo de 2007, 18:31 »
0
Me refiero a que en vez de presentar los datos en un datagridview normal, lo hago como si fueran label con sus textbox, pero enlazados a datos.

lencho

  • Miembro de PLATA
  • *****
  • Mensajes: 1076
    • Ver Perfil
Re: Ayuda Datagridview
« Respuesta #10 en: Viernes 23 de Marzo de 2007, 15:02 »
0
Cita de: "Cajami"
Código: Text
  1.    Private Sub DataGridView1_CellDoubleClick(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles DataGridView1.CellDoubleClick
  2.        Dim Fila_Seleccionada As Byte = CByte(Me.DataGridView1.CurrentCell.RowIndex)
  3.        My.FrmOtroFormulario.TextBox1.Text = Me.DataGridView1.Rows(Fila_Seleccionada).Cells(3).Value.ToString
  4.    End Sub
  5.  

lo que trataba de decirle era como sacar la info del registro seleccionado en el DataGridView, nos vemos  :hola:
cabe recalcar que eso solo funcionaria en el 2005 ya que el My es una de las novedades que no tenia el 2003. (caramba que ayudaria bastante).

BYTE.
______________________________________________________________________________________
"No estoy de acuerdo con lo que dices, pero defenderé con mi vida tu derecho a expresarlo"

Vortice

  • Miembro MUY activo
  • ***
  • Mensajes: 135
    • Ver Perfil
Re: Ayuda Datagridview
« Respuesta #11 en: Viernes 14 de Septiembre de 2007, 00:05 »
0
Estimados Camaradas yo quiero hacer esacto lo mismo pero con VB.Net 2003 y con el DataGrid en vez del DataGridView, lo intente pero no resulta el codigo sera otro????, ojala y puedan ayudarme..de antemano gracias.

Lo otro yo tengo el DataGrid en le mismo formulario donde estan los TextBox y los tengo enlazados a la Base de Datos atrvez del DataBlindings una propiedad del IDE, ojala y se pueda.......Chauuu Gracias
Solo el Bueno muere joven...