[英]Trying to load up combo box values once (at login screen) vb.net
我有幾個組合框需要加載一次並顯示多次(無論何時打開主窗體),原因是因為每次打開表單都需要大約10秒鍾的時間,因為不必要的重新查詢。
這是我作為組合框源所具有的內容以及已完成的示例。
我已經將查詢,連接等...放在模塊中,並在登錄表單上調用它-我沒有收到任何錯誤,但數據沒有加載到組合中。
'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
您的代碼看起來不錯; 確保數據集中有一些數據和/或嘗試跳過表映射,我的意思是更改您的代碼行。
替換此行
datemp4.Fill(ds, "Dir")
用這條線
datemp4.Fill(ds)
也更換這條線
//' in Form Load event
Dim tbl4 As DataTable = ds.Tables("Dir")
有了這個
Dim tbl4 As DataTable = ds.Tables(0)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.