级联组合框 - 返回VB.net后乘以值 [英] Cascade comboboxes - Multiplying values after return VB.net

查看:71
本文介绍了级联组合框 - 返回VB.net后乘以值的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

大家好,



我想知道,为什么再次点击我的组合框后,下一个组合框会记住之前选择的项目。



我有7个组合框(cb的项目在SQL表中存储)。对于每个我都有Sub来填充项目,如下所示:



Hi all,

I'm trying to figure out, why after clicking once again on my combobox, next combobox remember items from previous selection.

I have 7 comboboxes (items for cb's are storen in SQL table). For each I have Sub to fill it with the items, like this:

Sub fillAdditional()
    Dim var As String = Convert.ToString(cbAccount.SelectedItem)
    Dim var2 As String = Convert.ToString(cbTower.SelectedItem)
    Dim var3 As String = Convert.ToString(cbProcess.SelectedItem)
    strsql = "Select Distinct Additional from tblAdministratorData where AccIc in ( Select AID from tblAccount)"
    '((TimerAccount like '%" + var + "%') AND (TimerTower like '%" + var2 + "%') and (TimerProcess like '%" + var3 + "%'))"
    Dim acscmd As New SqlCommand
    acscmd.CommandText = strsql
    acscmd.Connection = cn
    acsdr = acscmd.ExecuteReader
    While (acsdr.Read())
        Me.cbAdditional.Items.Add(acsdr("Additional"))
    End While
    acscmd.Dispose()
    acsdr.Close()
End Sub





我打电话给每个人Combobox_SelectedIndexChange如:





I'm calling each after Combobox_SelectedIndexChange like:

Me.fillAdditional()





我试图通过添加





I was trying to do it, by adding

cbTower.SelectedIndex = cbTower.FindString(cbAccount.SelectedText)





到Combobox_SelectedIndexChange,但没有增值...



有人能告诉我,我做错了吗?

提前谢谢你!

最好的问候



to Combobox_SelectedIndexChange, but no value added...

Could someone tell me, what I'm doing wrong?
Thank you in advance!
Best Regards

推荐答案

Dim var As String = cbAccount.SelectedItem
strsql = "Select Distinct TimerTower from tblAccount  where (TimerAccount = '" + var + "')"
Dim acscmd As New SqlCommand
acscmd.CommandText = strsql
acscmd.Connection = cn
acsdr = acscmd.ExecuteReader
'If cbTower.SelectedItem = "" Then
While (acsdr.Read())
    Me.cbTower.Items.Add(acsdr("TimerTower"))
End While
acscmd.Dispose()
acsdr.Close()
 <pre></pre>



这是因为Select语句错误。



祝你好运!


It was because of Select statement was wrong.

Best regards!


这篇关于级联组合框 - 返回VB.net后乘以值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆