none
MOSTRAR RESULTADO EN TEXTBOX RRS feed

  • Pregunta

  • Buenos Días, tengo una consulta ??, Lo que pasa es que tengo 4 TextBox (Textbox1, Textbox2, Textbox3, Textbox4) y lo que yo quiero es que según lo que yo ponga en el Textbox1, automáticamente me bote resultados en los siguientes textbox.

    Cabe Señalar que la data lo saco de mi tabla Alumnos, Ejemplo;

    El Textbox1 ahí pongo el DNI del alumno

    Textbox2 me sale automáticamente basándose al Textbox1 (NOMBRE ALUMNO)(Columna(Nombre))

    Textbox3 me sale automáticamente basándose al Textbox1 (EDAD ALUMNO)(Columna(Edad))

    Textbox4 me sale automáticamente basándose al Textbox1 (Grado ALUMNO)(Columna(Grado))

    Espero me hayan entendido, Gracias.

    martes, 29 de diciembre de 2015 14:53

Respuestas

  • "Oscar Perez 1234" preguntó:

    > lo que yo quiero es que según lo que yo ponga en el Textbox1,
    > automáticamente me bote resultados en los siguientes textbox.

    Hola, Óscar:

    Suponiendo que tienes definida una clase Alumno, tan solo tienes que consultar tu tabla Alumnos para obtener los datos de un DNI concreto y mostrar los restantes datos en su correspondiente control TextBox:

    Imports System.Data.SqlClient Public Class Alumno Public Property DNI As String Public Property Nombre As String Public Property Edad As Integer Public Property Grado As String Public Shared Function ObtenerAlumno(dni As String) As Alumno     If (String.IsNullOrWhiteSpace(dni)) Then
            Throw New ArgumentException("No se ha indicado un DNI válido.")
        End If

    Dim alumno As New Alumno() ' Cadena de conexión con la base de datos de SQL Server. Dim cadenaConexion As String = "Data Source=(local);Initial Catalog=NombreBaseDatos;Integrated Security=True" Using cnn As New SqlConnection(cadenaConexion) Dim cmd As SqlCommand = cnn.CreateCommand() cmd.CommandText = "SELECT Nombre, Edad, Grado FROM Alumnos WHERE Dni = @dni" cmd.Parameters.AddWithValue("@dni", dni) cnn.Open() Dim dr As SqlDataReader = cmd.ExecuteReader(CommandBehavior.CloseConnection) If (dr.HasRows) Then dr.Read() alumno.DNI = dni alumno.Nombre = dr.GetString(0) alumno.Edad = dr.GetInt32(1) alumno.Grado = dr.GetString(2) dr.Close() Else Throw New ArgumentException("No existe ningún alumno con el DNI indicado.") End If End Using Return alumno End Function End Class


    Y cuando quieras obtener los datos de un alumno cualquiera, ejecutarías lo siguiente:

        Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
    
            Try
                Dim alumno As Alumno = Alumno.ObtenerAlumno(TextBox1.Text)
                TextBox2.Text = alumno.Nombre
                TextBox3.Text = alumno.Edad.ToString()
                TextBox4.Text = alumno.Grado
    
            Catch ex As Exception
                MessageBox.Show(ex.Message)
    
            End Try
    
        End Sub

    Un saludo y ¡Feliz Año Nuevo!


    Enrique Martínez Montejo
            [MS MVP - VB]

    Nota informativa: La información contenida en este mensaje, así como el código fuente incluido en el mismo, se proporciona «COMO ESTÁ», sin garantías de ninguna clase, y no otorga derecho alguno. Usted asume cualquier riesgo al poner en práctica, utilizar o ejecutar lo recomendado o sugerido en el presente mensaje.

    Si esta respuesta le ha resultado útil, recuerde marcarla como satisfactoria.

    Si usas Visual Basic .NET y deseas ser productivo y feliz, se inteligente y activa la instrucción
    Option Strict.

    martes, 29 de diciembre de 2015 16:43
    Moderador

Todas las respuestas

  • "Oscar Perez 1234" preguntó:

    > lo que yo quiero es que según lo que yo ponga en el Textbox1,
    > automáticamente me bote resultados en los siguientes textbox.

    Hola, Óscar:

    Suponiendo que tienes definida una clase Alumno, tan solo tienes que consultar tu tabla Alumnos para obtener los datos de un DNI concreto y mostrar los restantes datos en su correspondiente control TextBox:

    Imports System.Data.SqlClient Public Class Alumno Public Property DNI As String Public Property Nombre As String Public Property Edad As Integer Public Property Grado As String Public Shared Function ObtenerAlumno(dni As String) As Alumno     If (String.IsNullOrWhiteSpace(dni)) Then
            Throw New ArgumentException("No se ha indicado un DNI válido.")
        End If

    Dim alumno As New Alumno() ' Cadena de conexión con la base de datos de SQL Server. Dim cadenaConexion As String = "Data Source=(local);Initial Catalog=NombreBaseDatos;Integrated Security=True" Using cnn As New SqlConnection(cadenaConexion) Dim cmd As SqlCommand = cnn.CreateCommand() cmd.CommandText = "SELECT Nombre, Edad, Grado FROM Alumnos WHERE Dni = @dni" cmd.Parameters.AddWithValue("@dni", dni) cnn.Open() Dim dr As SqlDataReader = cmd.ExecuteReader(CommandBehavior.CloseConnection) If (dr.HasRows) Then dr.Read() alumno.DNI = dni alumno.Nombre = dr.GetString(0) alumno.Edad = dr.GetInt32(1) alumno.Grado = dr.GetString(2) dr.Close() Else Throw New ArgumentException("No existe ningún alumno con el DNI indicado.") End If End Using Return alumno End Function End Class


    Y cuando quieras obtener los datos de un alumno cualquiera, ejecutarías lo siguiente:

        Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
    
            Try
                Dim alumno As Alumno = Alumno.ObtenerAlumno(TextBox1.Text)
                TextBox2.Text = alumno.Nombre
                TextBox3.Text = alumno.Edad.ToString()
                TextBox4.Text = alumno.Grado
    
            Catch ex As Exception
                MessageBox.Show(ex.Message)
    
            End Try
    
        End Sub

    Un saludo y ¡Feliz Año Nuevo!


    Enrique Martínez Montejo
            [MS MVP - VB]

    Nota informativa: La información contenida en este mensaje, así como el código fuente incluido en el mismo, se proporciona «COMO ESTÁ», sin garantías de ninguna clase, y no otorga derecho alguno. Usted asume cualquier riesgo al poner en práctica, utilizar o ejecutar lo recomendado o sugerido en el presente mensaje.

    Si esta respuesta le ha resultado útil, recuerde marcarla como satisfactoria.

    Si usas Visual Basic .NET y deseas ser productivo y feliz, se inteligente y activa la instrucción
    Option Strict.

    martes, 29 de diciembre de 2015 16:43
    Moderador
  • Podrias utilizar el siguiente bcódigo:

    Try
                cn.Open()
                Dim cmd As New SqlCommand
                cmd.Connection = cn
                cmd.CommandType = CommandType.StoredProcedure
                cmd.CommandText = "DETALLE_GUIARECU"
                cmd.Parameters.Add(New SqlParameter("@codco", SqlDbType.VarChar)).Value = TextBoxX1.Text.Trim()
                'Llama campos
                Dim dr As SqlDataReader
                dr = cmd.ExecuteReader
                If dr.Read Then
                    Me.DateTimePicker1.Text = dr(1).ToString
                    Me.TextBoxX2.Text = dr(2).ToString
                    Me.Label8.Text = dr(3).ToString
                    Me.Label9.Text = dr(4).ToString
                End If
    
            Catch ex As Exception
                MsgBox("Verifique Información...", MsgBoxStyle.Information)
            Finally
                cn.Close()
            End Try


    David Mayurí Rojas

    martes, 29 de diciembre de 2015 18:28
  • Saludos

    en el evento keypress del textbox1 has lo siguente  esto es para cuando digites el id del alumno le das enter:

      Private Sub textbox1_KeyPress(sender As Object, e As KeyPressEventArgs) Handles txtid.KeyPress
            If e.KeyChar = ChrW(Keys.Enter) Then
                e.Handled = True
                SendKeys.Send("{TAB}")

                Dim da As New OleDbCommand("select * from ALUMNOS WHERE DNI=" & textbox1.Text.Trim & "", cn)

                Dim DR As OleDbDataReader


                cn.Open()
                DR = da.ExecuteReader

                If DR.Read Then
                    textbox2.Text = DR!nombrealumno.ToString
                  textbox3.Text = DR!edadalumno.ToString

                  textbox4.Text = DR!gradoalumno.ToString 

                   cn.Close()
                Else
                    cn.Close()
                End If

            End If
        End Sub

    martes, 29 de diciembre de 2015 19:13