如何从存储在数据库中的数据加载组合框中的项目

时间:2013-04-03 10:17:05

标签: .net vb.net combobox

我正在尝试从存储在数据库中的数据中加载组合框中的某个项目。 单击时我有一个按钮,它会在相关的框中正确填充公司详细信息。 在数据库中我有三个字段,如

Dev = Yes or No
Fin = Yes or No
Net = Yes or No

其中Dev是字段名称,Yes是存储在数据库中的文本。

我阅读了读者公司的所有细节,所以我试过这样的事情。

If reader(14).ToString = "Yes" then
   combobox1.items.add("Developer")
else if reader(15).ToString = "Yes" Then
   combobox1.items.add("Finance")
Else if reader(15).ToString = "Yes" Then
   combobox1.items.add("Networking")
End iF

没有任何想法如何实现这个目标?

3 个答案:

答案 0 :(得分:0)

试试这个,你在代码中检查这个条件else if reader(15).ToString = "Yes" Then两次,可能这对你来说可能是个问题。

If reader(14).ToString = "Yes" then
   combobox1.items.add("Developer")
else if reader(15).ToString = "Yes" Then
   combobox1.items.add("Finance")

'--------------\/ May be this could be your problem. 
Else if reader(15).ToString = "Yes" Then     
   combobox1.items.add("Networking")
End iF

请考虑这一点,这可以解决您的套管问题。

    If reader("Dev").ToString.ToUpper() = "YES" then
       combobox1.items.add("Developer")
    else if reader("Fin").ToString.ToUpper() = "YES" Then
       combobox1.items.add("Finance")
    Else if reader("Net").ToString.ToUpper() = "YES" Then     
       combobox1.items.add("Networking")
    End iF

答案 1 :(得分:0)

使用Equals检查条件的值,字段的名称和ElseIf(所有在一起),并检查是否能解决您的问题:

If reader("Dev").ToString.Equals("yes", StringComparison.InvariantCultureIgnoreCase) Then
    ComboBox1.Items.Add("Developer")
ElseIf reader("Fin").ToString.Equals("yes", StringComparison.InvariantCultureIgnoreCase) Then
    ComboBox1.Items.Add("Finance")
ElseIf reader("Net").ToString.Equals("yes", StringComparison.InvariantCultureIgnoreCase) Then
    ComboBox1.Items.Add("Networking")
EndIf

但如果在数据库中以不同的方式存储值,那会更好。例如,您只能在一个字段中存储该类型。例如,“Dev”,“Fin”或“Net”。或者甚至更好,有一个带有id,值和代码的新表,只使用id。

答案 2 :(得分:0)

If reader(9).ToString = "yes" Then
    ComboBox1.Items.Add("Developer")
ElseIf reader(9).ToString = "no" Then
End If
If reader(11).ToString = "yes" Then
    ComboBox1.Items.Add("Finance")
ElseIf reader(11).ToString = "no" Then
End If
If reader(10).ToString = "yes" Then
    ComboBox1.Items.Add("Networking")
ElseIf reader(10).ToString = "no" Then
End If