我想添加一行的單元格並在網格中的新單元格中顯示總數。我正在使用DevExpress的gridControl。網格有12列代表一年中的月份,我想添加月份值並在第13列中顯示總數。c#添加浮點數的行爲很奇怪
我的問題是,如果我有一個浮點值「111,22」,它將作爲「111,2188」添加到數據庫中,並在第13個單元格中沒有精度顯示。
所以,我有兩個問題。第一個是「爲什麼它會將它作爲111,2188插入到數據庫中?」第二個是「爲什麼顯示總數」。
這裏是我的代碼......發生這種情況時,我加111,2188和200,我也得到211,2188 ....
private void calculate_gv_row_total(int row_index) {
float total = 0;
for (int j = 0; start_index + j < start_index + months; j++)
{
float f = float.Parse(gv.GetDataRow(row_index)[start_index + j].ToString());
total = total + f;
}
gv.GetDataRow(row_index)[total_cell_index] = total;
}
如何解決這些問題呢?我究竟做錯了什麼?
嘗試,有很多的'Decimal'數據類型 –
愚弄「我真的不明白'float'手段」的問題。見http://csharpindepth.com/Articles/General/FloatingPoint.aspx和http://csharpindepth.com/Articles/General/Decimal.aspx –
@ayilmaz,似乎你實施了錯誤的解決方案.. – Tauseef