Como cargar un datagrid
Necesito cargar un datagrid con la informacion de una base de datos, tengo una clase q me trae lo q necesito como le paso esto al datagrid
Public Function Trae_Reservacion(ByVal reserva As String) As ArrayList
Dim prof, est As String
Dim DatosReservacion As New ArrayList()
Dim item As New ArrayList()
Try
myConnection.Open()
Dim Datos As String _
= "Select Secuencia_reservacion, fecha_prestamo, hora_inicio,hora_devolucion,cod_aula,codigo_equipo,to_char(cedula_prof),to_char(cedula_est),hora_caducado From reservacion where tipo_reservacion='Inactiva' and devolucion='NO' and caduca='Falso'"
Dim comando As New OdbcCommand(Datos, myConnection)
Dim Reader As OdbcDataReader = comando.ExecuteReader()
While Reader.Read()
DatosReservacion.Add(Reader.GetInt16(0).ToString())
DatosReservacion.Add(Reader.GetDate(1).ToString())
DatosReservacion.Add(Reader.GetString(2).ToString())
DatosReservacion.Add(Reader.GetString(3).ToString())
DatosReservacion.Add(Reader.GetString(4).ToString())
DatosReservacion.Add(Reader.GetInt16(5).ToString())
If Reader.IsDBNull(6) Then
DatosReservacion.Add("")
est = Reader.GetString(7).ToString()
DatosReservacion.Insert(7, est)
Else
prof = Reader.GetString(6).ToString()
DatosReservacion.Insert(6, prof)
DatosReservacion.Insert(7, "")
End If
DatosReservacion.Add(Reader.GetDate(8).ToString())
End While
Reader.Close()
myConnection.Close()
Return DatosReservacion
Catch ex As Exception
MsgBox("Error en la consulta, Conexión Invalida")
myConnection.Close()
End Try
End Function
Public Function Trae_Reservacion(ByVal reserva As String) As ArrayList
Dim prof, est As String
Dim DatosReservacion As New ArrayList()
Dim item As New ArrayList()
Try
myConnection.Open()
Dim Datos As String _
= "Select Secuencia_reservacion, fecha_prestamo, hora_inicio,hora_devolucion,cod_aula,codigo_equipo,to_char(cedula_prof),to_char(cedula_est),hora_caducado From reservacion where tipo_reservacion='Inactiva' and devolucion='NO' and caduca='Falso'"
Dim comando As New OdbcCommand(Datos, myConnection)
Dim Reader As OdbcDataReader = comando.ExecuteReader()
While Reader.Read()
DatosReservacion.Add(Reader.GetInt16(0).ToString())
DatosReservacion.Add(Reader.GetDate(1).ToString())
DatosReservacion.Add(Reader.GetString(2).ToString())
DatosReservacion.Add(Reader.GetString(3).ToString())
DatosReservacion.Add(Reader.GetString(4).ToString())
DatosReservacion.Add(Reader.GetInt16(5).ToString())
If Reader.IsDBNull(6) Then
DatosReservacion.Add("")
est = Reader.GetString(7).ToString()
DatosReservacion.Insert(7, est)
Else
prof = Reader.GetString(6).ToString()
DatosReservacion.Insert(6, prof)
DatosReservacion.Insert(7, "")
End If
DatosReservacion.Add(Reader.GetDate(8).ToString())
End While
Reader.Close()
myConnection.Close()
Return DatosReservacion
Catch ex As Exception
MsgBox("Error en la consulta, Conexión Invalida")
myConnection.Close()
End Try
End Function
Puedes bindear un grid a partir de varios objetos, Dataset, Datatable, DataReader, ArrayLists, Hashtables...
Solo tienes que hacer
myDataGrid.DataSource = OBJETO;
myDataGrid.DataBind();
Solo tienes que hacer
myDataGrid.DataSource = OBJETO;
myDataGrid.DataBind();
Lo estas haciendo muy complicado, es mucho más sencillo si haces lo siguiente:
Una vez creado el odbccommand, yo lo que harÃa es crearme en el diseño un odbcdataadapter (sino sabes como 3 consultas mas arriba de la tuya a SETE se lo he explicado) y haces lo siguiente:
odbcAdapter.SelecTCOmmand=odbcCommand
(Ahora aquà te declaras un objeto datatable yo lo voy a llamr tabla y sigues con esto:)
odbcAdapter.fill(Tabla)
datagrid.datasource=tabla
Y con esto ya tienes cargados toda la tabla en el datagrid.
Aprende a usar el datatable, es muyyyyy util, pq luego puedes navegar con el con las propiedades row y row.item y puedes crear nuevas filas, eliminar y lo q quieras y ves q es muy sencillo
Una vez creado el odbccommand, yo lo que harÃa es crearme en el diseño un odbcdataadapter (sino sabes como 3 consultas mas arriba de la tuya a SETE se lo he explicado) y haces lo siguiente:
odbcAdapter.SelecTCOmmand=odbcCommand
(Ahora aquà te declaras un objeto datatable yo lo voy a llamr tabla y sigues con esto:)
odbcAdapter.fill(Tabla)
datagrid.datasource=tabla
Y con esto ya tienes cargados toda la tabla en el datagrid.
Aprende a usar el datatable, es muyyyyy util, pq luego puedes navegar con el con las propiedades row y row.item y puedes crear nuevas filas, eliminar y lo q quieras y ves q es muy sencillo
