[英]How to Populate ComboBox from access db in C#
我有下一個組合框:
this.comboBoxProd.Enabled = false;
this.comboBoxProd.FormattingEnabled = true;
this.comboBoxProd.Items.AddRange(new object[] {
"Cameras",
"------------",
" Digital IXUS 850 IS ",
" Digital IXUS 900 Ti ",
" Digital IXUS 75 -NEW- ",
" Digital IXUS 70 -NEW- ", etc.
我想更改它並從數據庫中獲取值。 我的數據庫名稱為bd1.mdb,在“相機”表中它具有以下字段:CamID,相機,保修,年份。 我只對“相機”字段感興趣。 謝謝!
您應該在這里仔細查看ADO.NET與.mdb文件的操作
首先,准備您的連接字符串
string connString = "Microsoft.Jet.OLEDB.4.0;Data Source=C:\\bd1.mdb";
下一步是准備您的查詢
string query = "SELECT Cameras FROM Cameras";
您將需要一個適配器來綁定數據源,在這種情況下,它是OleDbDataAdapter
OleDbDataAdapter dAdapter = new OleDbDataAdapter(query, connString);
現在,您可以使用DataTable對象綁定到組合框
DataTable source = new DataTable();
將數據填充到您的源中
dAdapter.Fill(source);
您的資料來源中包含相機,現在可以參考組合框控件
combobox.DataSource = source;
不要忘記您應該在組合框項目中顯示哪個字段
combobox.DataTextField = "Cameras";//from query
可能想以這種方式將valuemember添加到組合框,以便可以鏈接回相機ID。 嘗試將查詢更改為:
SELECT CameraID, Cameras From Camers
然后將cameraID添加到value成員
combobox.valuemember = "cameraID"
和
combobox.displaymember = "Cameras"
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.