none
pasar y devolver variables entre formularios RRS feed

  • Pregunta

  • quiero pasar datos entre formularios envio un valor a otro formulario pero quero que este me regrese un valor al primer formulario pero no me regresa nada aqui anexo el codigo para ver si alguien me puede ayudar

    public id_bus_hist as string

    Private Sub Button11_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button11.Click

    Try Dim frm As New frm_busqueda_historial If TextBox1.Text <> "" Then query = "select * from tbl_pacientes where id_paciente='" & TextBox1.Text & "'" End If Dim recordcount As Integer cn.Open() da = New SqlDataAdapter(query, cn) dt = New DataTable da.Fill(dt) For Each row As DataRow In dt.Rows recordcount = recordcount + 1 Next If recordcount = 0 Then MsgBox("No Existe Registro") End If If recordcount = 1 Then Dim cmd As New SqlCommand(query, cn) reader = cmd.ExecuteReader() If reader.Read() Then TextBox24.Text = CStr(reader("id_paciente")) reader.Close() End If End If If recordcount > 1 Then cn.Close() frm.regresar = da frm_busqueda_historial.ShowDialog() MsgBox(id_bus_hist) End If cn.Close() recordcount = 0 Catch ex As Exception reader.Close() cn.Close() MsgBox(ex.Message) End Try

    y aqui esta el codigo donde recibe los datos y de aqui quero que me devuelva un valor

        Public regresar As New SqlDataAdapter
        Dim indice As String
        Private Sub frm_busqueda_historial_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
            Try
    
                cn.Open()
                query = "select * from tbl_pacientes"
                dt = New DataTable
                da.Fill(dt)
                dgv_hist_bus.DataSource = dt
                cn.Close()
            Catch ex As Exception
                cn.Close()
                MsgBox(ex.Message)
    
            End Try
        End Sub
    
        Private Sub dgv_hist_bus_CellDoubleClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles dgv_hist_bus.CellDoubleClick
    
            Try
                Dim form As New frm_historial
                indice = dgv_hist_bus.CurrentRow.Cells(0).Value.ToString()
                form.id_bus_hist = indice
                Me.Close()
            Catch ex As Exception
                MsgBox(ex.Message)
            End Try
            
        End Sub

    martes, 3 de julio de 2012 22:12

Todas las respuestas

  • Hola.

    Existen varias maneras de pasar objetos entre formualarios, pero depende con exactitud lo que quieras, muchas cosas se resuelven utilizando parametros como referencias, en el blog de Leonardo hay muchas cosas al respecto.

    Saludos.


    - Si un comentario te ayuda a resolver tu problema, marcalo como respuesta, pero si basado en tu experiencia la consideras como util para la comunidad de desarrolladores, marcalo como util.

    miércoles, 4 de julio de 2012 13:20