Populate Data from a Table in a ComboBox
This article is my own approach on how to get data populated in a ComboBox.It shows also how to get connected to a MS-Access database which you can also find in the project included(sudentDB.mdb).
After having seen C#-newbies in some C#-Help-message-boards asking about the 'how to get data into ComboBox', I wanted to create a ComboBox-Programm.The Application allows you to select a StudentID and displays the columns StudentID,Student Subjet and Student Name from the table in the TextBoxes;
Using the code
After getting connected to the database 'student' in the methode 'fnGetConnectedToDatabase'(There is a small help about the database connection in comments) I assign in a foreach-loopall the columns to 3 variables(strStudentID,strStudentSubject,strStudentName)Don4t forget to create a new folder DATA on your harddisk(here D:) and copy the database'studentDB' and 'imgCombobox.jpg' into it. The variable 'strTemp' holds all the 3 varibales with 3 stars like that'strTemp=WS-P1998*Philosophy*Jo Marks' because I want to divide the 'strTemp'as good as in 3 different parts(words) separated by a star.I want later to get those 3 different words and display them in the TextBoxes.And then I put the content of the variable 'strTemp' into a ArrayList with a index 'i'.Now you write each strStudentID in the ComboBox 'this.comboBox1.Items.Add(strStudentID);'
private void fnGetConnectedToDatabase()
foreach (DataRow myRow in myDataset.Tables["student"].Rows)
strStudentID =(string) myRow["studentID"];
//put strTemp into string strArraylist with int i(index for strArraylist)
//display in the ComboBox only strStudentID
As soon as you select a StudentID from the ComboBox the methode
private void comboBox1_SelectedIndexChanged(object sender, System.EventArgs e)
char  delimeter=delimstr.ToCharArray();
string  splitstr=null;
//Now assign the data from splitstr to TextBoxes
With 'this.strArraylist[this.comboBox1.SelectedIndex]' I get from the ArrayList
i.e 'WS-P1998*Philosophy*Jo Marks' at the position 'this.comboBox1.SelectedIndex'
and with Split(delimeter,3) I split up that into 3 words
'WS-P1998' in splitstr
'Philosophy' in splitstr
'Jo Marks' in splitstr
Now we can assign the contents of the string 'splitstr' by index 0,1,2
to TextBoxes textBox1, textBox2 and textBox3.
And that's it.
I hope you enjoy it! – Good coding!