我有幾個組合框,需要加載一次並顯示多次(每當主窗體打開)原因是因爲由於不必要的重新查詢,每次打開表單需要大約10秒的時間。嘗試加載組合框值一次(在登錄屏幕)vb.net
這裏是我作爲一個組合框源和我做了什麼的例子。
我已經把查詢,連接等等放在一個模塊中,並在登錄表單上調用它 - 我沒有得到任何錯誤,但數據不會加載到組合中。
'In Module
sql = "SELECT DIR_ID, DIR_NM FROM LTC_FBS_DIR ORDER BY DIR_NM ASC"
RConStr = String.Format(RConStrFormat, LoginForm.txtUser.Text, LoginForm.txtPass.Text)
'using instead of dim connemp
Dim connemp4 As System.Data.OleDb.OleDbConnection = New System.Data.OleDb.OleDbConnection(RConStr)
connemp4.Open()
Dim datemp4 As OleDbDataAdapter = New OleDbDataAdapter(sql, connemp4)
datemp4.Fill(ds, "Dir")
'Form Load event
Dim tbl4 As DataTable = ds.Tables("Dir")
DBS_DIRECTORComboBox.DisplayMember = "DIR_NM"
DBS_DIRECTORComboBox.ValueMember = "DIR_ID"
DBS_DIRECTORComboBox.DataSource = tbl4
裝入一個,而不是其他控件,或者根本沒有任何控制的項目?表單在哪裏獲得對ds的引用,模塊在哪裏調用? – David 2011-03-10 18:12:03
哪些Windows窗體或Web窗體?你在談論asp.net嗎? – 2011-03-10 18:15:23
窗體窗體,我在登錄窗體上調用模塊。 – gfuller40 2011-03-10 18:30:05