2014-02-09 25 views
0

我正在創建一個將excel提取到數據表中的應用程序,該表將顯示在列表中。但問題是所有的數據都將明智的數據放入列表框中。如何以表格的形式檢索數據表到列表框中

DataTable dt = new DataTable(); 
DataSet ds = new DataSet(); 
DataTable sheet = dbConn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, null); 
OleDbCommand selectCmd = new OleDbCommand(String.Format("SELECT * FROM [{0}]", sheet.Rows[0]["TABLE_NAME"]), dbConn); 
OleDbDataAdapter dbAdapter = new OleDbDataAdapter(selectCmd); 
dbAdapter.Fill(dt); 


foreach (DataRow row in dt.Rows) 
{ 
    foreach (DataColumn col in dt.Columns) 
    { 
     ListBox1.Items.Add(row[col].ToString()); 
    } 
} 

回答

1

爲什麼不直接使用DataGridView類?然後,可以直接將DataTable設置爲數據源。

dataGridView1.DataSource = dt; 

對於列表框,您需要創建一個代表每列的字符串。這將很難對齊。如果你想要修改單元格的值,那將非常麻煩。

foreach (DataRow row in dt.Rows) 
{ 
    var sb = new StringBuilder(); 
    foreach (DataColumn col in dt.Columns) 
    { 
     sb.Append(row[col] + "\t"); 
    } 
    ListBox1.Items.Add(sb.ToString()); 
} 
相關問題