2012-05-16 44 views
0

我有一個列表框,並希望用數據庫中的數據填充它,這兩個必須鏈接,所以如果我從列表框中選擇一個值,我可以工作與數據庫中的條目一起使用。如何將數據從數據庫綁定到使用斷開連接的數據庫的列表框

我使用斷開連接的數據庫巫婆連接,雖然連接字符串:

conn = new SqlConnection(Properties.Settings.Default.DBConnectionString) 

我已經在數據集的閱讀和思考我需要創建一個並把它作爲我的列表框的數據源,然後有顯示的數據看起來整潔,我需要設置顯示名稱。

有人可以告訴我如何創建一個數據集連接到我的數據庫中的表,然後告訴我如何綁定它。

數據庫稱爲TagCloudDB和表稱爲標籤,只是ListBox1的

這是我到目前爲止的代碼,但它只是用System.Data.DataRowView填充列表框。

using (var conn = new SqlConnection(Properties.Settings.Default.DBConnectionString)) 
      { 
       conn.Open(); 

       SqlDataAdapter daTags 
       = new SqlDataAdapter("Select * From Tag", conn); 

       DataSet dsTags = new DataSet("TagCloud"); 

       daTags.FillSchema(dsTags, SchemaType.Source, "Tag"); 
       daTags.Fill(dsTags, "Tag"); 

       daTags.MissingSchemaAction = MissingSchemaAction.AddWithKey; 
       daTags.Fill(dsTags, "Tag"); 

       DataTable tblTag; 
       tblTag = dsTags.Tables["Tag"]; 

       dplTags.DataSource = dsTags; 
       dplTags.DataMember = "Tag"; 
       dplTags.DataBind(); 
      } 

我的確在用VB拼貼類似的一些事情,他們有一個ValueMemberDisplaymember,什麼在C#

回答

1
SqlConnection _connection = new Connection(connectionString) 
SqlDataAdapter _adapter = new SqlDataAdapter(_connection, "select * from tag") 
DataTable _table = new DataTable() 
_adapter.Fill(_table) 

_connection.Close(); 

foreach(DataRow _row in _table.Rows) 
{ 
listbox.AddItem(new Item(_row["column1"], _row["column2"]) 
} 

相當於你不需要亂用數據表。它會自動與sql查詢綁定。

+0

你的代碼看起來很簡單,我不認爲它會工作。我不只是想填充列表框,我需要綁定它,所以我可以使用選定的數據 – Pomster

相關問題