Creating a multicolumn Dropdownlist
Click here to return to my article index
One of the frequently asked questions over at Asplists.com is: "How do I create a multicolumn dropdownlist?". I have come up with two ways to accomplish this task.
The first technique combines the two columns in the SQL query used to create the resultset and then binds the resultset to the dropdownlist. More AspAlliance SQL articles can be found here.
Code:
Sub FillDropDownSQL()
Dim myConnection As SqlConnection = new SqlConnection("Data Source=test; User Id=test; Password=test; Initial Catalog=pubs")
Dim myCommand As SqlCommand = New SqlCommand("Select pub_id + ',' + pub_name As IDAndName From publishers", myConnection)
myConnection.Open()
DropDownList1.DataTextField = "IDAndName"
DropDownList1.DataSource = myCommand.ExecuteReader(CommandBehavior.CloseConnection)
DropDownList1.DataBind()
End Sub
Result:
0736,New Moon Books 0877,Binnet & Hardley 1389,Algodata Infosystems 1622,Five Lakes Publishing 1756,Ramona Publishers 9901,GGG&G 9952,Scootney Books 9999,Lucerne Publishing
The second technique combines the two columns while looping through a SqlDataReader. The combination of the two columns is then programmatically added to the dropdownlist. More information on the SqlDataReader can be found here.
Code:
Sub FillDropDownCode()
Dim myConnection As SqlConnection = new SqlConnection("Data Source=test; User Id=test; Password=test; Initial Catalog=pubs")
Dim myCommand As SqlCommand = New SqlCommand("Select pub_id,pub_name From publishers", myConnection)
Dim myDataReader As SqlDataReader
myConnection.Open()
myDataReader = myCommand.ExecuteReader()
While myDataReader.Read()
DropDownList2.Items.Add(myDataReader.GetString(0) & "," & myDataReader.GetString(1))
End While
myDataReader.Close()
myConnection.Close()
End Sub
Result:
DPC: Creating a multicolumn Dropdownlist[等级:初 中]
80酷酷网 80kuku.com