2013-04-07 30 views
0

我想知道是否有人可以告訴我爲什麼當我從具有多列的數據集填充我的組合框時,列值之間的每一行中都有空格(大約5個空格)。C# - 從數據集導入後組合框項包含空格

代碼

thisConnect.Open(); 

SqlDataAdapter sqladapt = new SqlDataAdapter("SELECT firstname, lastname, address FROM OwnersTbl", thisConnect); 

DataSet ds = new DataSet(); 

sqladapt.Fill(ds, "OwnersTbl"); 

thisConnect.Close(); 

for (int i = 0; i < ds.Tables[0].Rows.Count; i++) 
{ 
    comboBoxOwners.Items.Add(ds.Tables[0].Rows[i][0] + "" + ds.Tables[0].Rows[i][1] + "" + ds.Tables[0].Rows[i][2]); 
} 
+1

因爲你在數據庫中使用char而不是varchar數據類型? – 2013-04-07 20:52:04

回答

0

正如評論。如果是字符(30),那麼你會得到30個字符。
嘗試

select rtrim(firstname) ... 

OR

ds.Tables[0].Rows[i][0].Trim() 

而且它並不總是更好的去VARCHAR。
如果這些值初始爲空並且您添加,則會導致頁面拆分。
但是一個char(30)將會保存這個空間。

+0

謝謝大家,只要我修剪了數據,它就消除了空間。 – Ralph 2013-04-07 21:35:53

+0

如果是,並回答然後檢查它? – Paparazzi 2013-04-08 00:22:50