2013-04-01 22 views
0

我有2個列在我的數據庫和2個組合框在我的形式相互連接。一個包含浮點值,另一個包含VarChar。我使用下面的代碼,它適用於使用VarChar的代碼,但不能使用浮動代碼。哪裏不對?VB.Net:如何使用浮點值從數據庫填充組合框

sqlstr = "SELECT * FROM Student WHERE Code = 2" 
DBCmd = New MySql.Data.MySqlClient.MySqlCommand(sqlstr, DBConn) 
DBDr = DBCmd.ExecuteReader 

While (DBDr.Read()) 
CBox_TBand.SelectedItem = DBDr("TB") 
CBox_State.SelectedItem = DBDr("State") 
End While 
DBCmd.Dispose() 
DBDr.Close() 

TB列包含float和State列包含Varchar。

+0

請顯示爲DataSource,ValueMember和DisplayMember指定組合框的代碼。 –

+0

我認爲它應該與數據類型有關。 我甚至嘗試寫CBox_TBand.SelectedItem =(DBDr(「TB」))toString,但它沒有奏效。 –

+0

我試圖將數據庫中的TB數據類型更改爲VarChar,現在它正在工作;但是如果我想讓結核病病毒繼續保持浮動,我該如何解決它? –

回答

1

從DB的Float轉換爲String時,可能會丟失格式。試試這個:

CBox_TBand.SelectedItem = Decimal.Parse(DBDr("TB")).ToString()