CLR: .Net / Mono / Boo / Otros CLR > VB .NET

 Duda sobre los dataGrid

(1/1)

fORU-:
Hola que tal, Tengo una duda alguien me puede poner el algoritmo de como hacer funcionar un data grid para lo que quiero hacer xD

Bueno primero les contare un poco, intento mostrar algunos datos en vb.net de una bd (mysql) ejemplo:

SELECT Descripcion,Precio,Numero FROM producto;

Por ahi me recomendaron que definiera 3 columnas a ese datagrid (Descripcion,Precio,Numero) pero ahora de ahi que sigue???

Gracias por su tiempo y atencion..

jorge_jvm:
hola, pues mira yo lo realizo asi:

Private OrigendeDatos As Windows.Forms.BindingSource = New BindingSource

y despues en el boton o en el load de tu form (Mi dataGrid se llama BCListaDG):

Try

            'Realiza la conexion a la base de datos
            ConexionSQL = New SqlConnection _
            ("server=NombreoipServidorSQL,uid=juanperez,pwd=123abc,database=Nombre_de_tu_base_de_datos")

            'Abre la conexcion
            ConexionSQL.Open()

            'Crear un DataAdapter y pasarle el comando para traer los registros  
            Dim da As New SqlDataAdapter("SELECT Descripcion,Precio,Numero FROM producto", ConexionSQL)

            'DataTable  
            Dim dt As New DataTable

            'Llenar el DataTable  
            da.Fill(dt)

            'Enlazar el DataTable al BindingSource  
            OrigendeDatos.DataSource = dt

            'Propiedades para el DataGridview  
            BCListaDG.DataSource = OrigendeDatos.DataSource

            'Cierra la conexion
            ConexionSQL.Close()

            'Si no logra abrir la conexion
        Catch ex As SqlException

            'mensage de error del servidor
            MsgBox("Error al conectar con Base de datos." _
                   & ControlChars.CrLf & ex.Message & _
                   ControlChars.CrLf, Title:="Error SQL")
        End Try

de esta manera tendras los datos que quieres, ya filtrados en tu Datagrid. Ojala te sea de utilidad, si no, pregunta de nuez  :good:  SALUDOS

fORU-:
mm no me funciono, thxs

jorge_jvm:
que error te da?

fORU-:
Gracias por su codigo companero, ya me explicaron de otra forma de realizar lo que quiero (con mysql). pongo el codigo para quien ocupe info.


--- Código: Text ---    Private Sub Button3_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click        Dim con As New Conexion 'TENGO UNA CLASE LLAMADA CONEXION CON LA CUAL ME CONECTO A LA BD INTRODUCIENDO PASS Y USR        con.conectar("[aquiTuContrasena", "AquiTuUsuario") //ME CONECTO A MI BD         Dim _idProducto As String = "SELECT idProducto,Descripcion FROM producto WHERE Categoria='CONSTRUCCION' ORDER BY Descripcion ASC"         Dim command As New MySql.Data.MySqlClient.MySqlCommand(_idProducto, con.conn)        Dim reader As MySql.Data.MySqlClient.MySqlDataReader = command.ExecuteReader        Dim St(2) As String         While reader.Read            St = New String() {reader.GetString(0), reader.GetString(1)}            DataGridView1.Rows.Add(St)        End While        reader.Close()    End SubEnd Class  
NOTA: ya se tiene definidas dos columnas en el DataGridView
NOTA: St es un vector donde se tiene que poner  reader.Getstring(xColumna), en este caso se tiene dos columnas idProducto y Descripcion, si se quisiera poner una columna mas (ejem Precio) 1: poner la columna (propiedades de datagridview) y 2: seria Dim St(3) as String y St=New String() {reader.GetString(0), reader.GetString(1), reader.GetString(2)}
NOTA: Si se intenta acceder a una columna donde el valor de un registro es null se detendra el programa por lo tanto se ocuparia usar try-catch para que el programa no se detenga.

Navegación

[0] Índice de Mensajes

Ir a la versión completa