I have a class.
Expand|Select|Wrap|Line Numbers
- Public Class db_Vehicle
- Public bs_VehicleDetails As New BindingSource()
- Public da_VehicleDetails As New SqlDataAdapter()
- Public table As New DataTable()
- Private dbsettings As cls_settings
- Public Sub New(ByRef mySettings As cls_settings)
- Me.dbsettings = mySettings
- End Sub
- Public Function GetVehicleDetails() As BindingSource
- 'Dim ds As DataSet
- Dim dsChanges As New DataSet
- ' Specify a connection string.
- Dim dbcnn As SqlConnection = New SqlConnection(dbsettings.getDatabaseString)
- ' Create a new data adapter based on the specified query.
- Me.da_VehicleDetails = New SqlDataAdapter("SELECT ServiceFlag FROM ServiceDates", dbcnn)
- ' Create a command builder to generate SQL update, insert, and
- ' delete commands based on selectCommand. These are used to
- ' update the database.
- Dim commandBuilder As New SqlCommandBuilder(Me.da_VehicleDetails)
- ' Populate a new data table and bind it to the BindingSource.
- table.Locale = System.Globalization.CultureInfo.InvariantCulture
- Me.da_VehicleDetails.Fill(table)
- Me.bs_VehicleDetails.DataSource = table
- 'Newform.dgv_Vehicles.DataSource = bs_VehicleDetails
- Me.da_VehicleDetails.Update(table)
- Return bs_VehicleDetails
- End Function
- End Class
Then I call my class.
Expand|Select|Wrap|Line Numbers
- Public Sub Retrieve_SF()
- Dim imageNo As Image = System.Drawing.Image.FromFile("C:\Development\Image\Red.bmp")
- Dim imageYes As Image = System.Drawing.Image.FromFile("C:\Development\Image\Green.bmp")
- Dim dgvICol As New DataGridViewImageColumn()
- Dim Conn_SF As SqlClient.SqlConnection = New SqlClient.SqlConnection(dbsettings.getDatabaseString)
- Dim command As SqlCommand = New SqlCommand("SELECT ServiceFlag FROM ServiceDates", Conn_SF)
- 'Dim instance As New DataGridViewRowCollection
- 'Dim dataGridViewRow As New DataGridViewRow
- 'Dim returnValue As Integer
- Conn_SF.Open()
- dgvICol.HeaderText = "Service Flag"
- dgvICol.Name = "ImageCol"
- Dim reader As SqlDataReader = command.ExecuteReader()
- dgv_Vehicles.Columns.Insert(0, dgvICol)
- 'dgv_Vehicles.AllowUserToAddRows = True
- Dim i As Integer = 0
- 'This is to temporarily store the results of the reader.read method
- Dim strItem As String
- While reader.Read()
- With dgv_Vehicles
- '.EditMode.EditProgrammatically = DataGridViewEditMode.EditProgrammatically
- .EditMode = DataGridViewEditMode.EditProgrammatically
- Dim rw As New DataGridViewRow
- 'Dim dradd As New DataRow
- rw.Cells.Add(New DataGridViewImageCell)
- strItem = reader.Item(0).ToString
- If reader.HasRows Then
- i += 1
- strItem = strItem.TrimEnd(" ")
- If strItem = "Out" Then
- rw.Cells(0).Value = imageNo
- ElseIf strItem = "In" Then
- rw.Cells(0).Value = imageYes
- End If
- '.DataSource = DBNull.Value
- 'Vehicle.bs_VehicleDetails.Add(rw)
- .Rows.Add(rw) "Error here"
- 'returnValue = instance.Add(dataGridViewRow)
- .AutoResizeColumn(0)
- 'This clears the variable
- strItem = ""
- End If
- End With
- End While
- End Sub