Hi. I'm having a problem to pull data from MS Access to my combobox. I know how to search one data using another data (e.g: using IC num to search name) but this time I just want to pull the data (e.g: name) that has several rows to my combobox. I think the method is the same but don't know where to change it.
Then when I added new names to the combobox, want to save it to my database, can each name be saved in different rows? I added the names to the combobox 1st, after that then I saved it.
This is my idea and I don't know it can be done or not. Here's my codes:
SEARCH CODE
Private Sub SearchButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles SearchButton.Click
Dim ConStr As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Documents and Settings\~LaiLi~\My Documents\Visual Studio 2005\Projects\MoreWever\MoreWever\bin\Debug\Inventory.mdb"
sql = "SELECT * FROM Profile WHERE StudID = '" & StudIDTextBox.Text & "'"
con.Open()
Dim cmd As OleDbCommand
Dim dr As OleDbDataReader
cmd = New OleDbCommand(sql, con)
dr = cmd.ExecuteReader
While dr.Read()
StudNameTextBox.Text = dr("StudName")
End While
con.Close()
End Sub
ADD TO COMBOBOX CODE
With StudNameComboBox
If .Text <> "" Then
Dim ItemFoundBoolean As Boolean
Dim ItemIndexInteger As Integer
Do Until ItemFoundBoolean Or ItemIndexInteger = .Items.Count
If .Text = .Items(ItemIndexInteger).ToString() Then
ItemFoundBoolean = True
Exit Do
Else
ItemIndexInteger += 1
End If
Loop
If ItemFoundBoolean Then
MessageBox.Show("Duplicate item.", "Add failed", MessageBoxButtons.OK, MessageBoxIcon.Exclamation)
Else
.Items.Add(.Text)
.Text = ""
End If
Else
MessageBox.Show("Enter a new name.", "Missing Data", MessageBoxButtons.OK, MessageBoxIcon.Exclamation)
End If
End With
ADD TO DATABASE CODE
con.ConnectionString = "PROVIDER=Microsoft.Jet.Oledb.4.0; Data source =C:\Documents and Settings\~LaiLi~\My Documents\Visual Studio 2005\Projects\MoreWever\MoreWever\bin\Debug\Inventory.mdb"
sql = "SELECT * FROM Profile"
da = New OleDb.OleDbDataAdapter(sql, con)
da.Fill(ds, "Profile")
Dim cb As New OleDb.OleDbCommandBuilder(da)
Dim dsnewrow As DataRow
dsnewrow = ds.Tables("Profile").NewRow()
dsnewrow.Item("StudName") = StudNameTextBox.Text
dsnewrow.Item("StudID") = StudIDTextBox.Text
ds.Tables("Profile").Rows.Add(dsnewrow)
da.Update(ds, "Profile")
Also, if I want to add/pull into listbox, is the coding still the same?
Thank you.