2014-11-04 30 views

回答

0

似乎您使用的十進制格式不適用於您的應用程序中使用的文化。

解決辦法有兩個:
1.使用DataFormatString="{0:D}"細胞
2.儘量使用Decimal.TryParse與正確NumberStylesFormatProvider。詳情請點擊here

在你的情況,你應該使用FR-FR文化如下:

Decimal.TryParse(gridview.Rows [0] .Cells [0],NumberStyles.Any, CultureInfo.GetCultureInfo(「FR -FR「),out val)

+0

gridview中的格式是來自用戶的請求。我對Convert.ToDecima()使用DataFormatString =「{F2}」保存的DataFormatString =「{0:#,###,## 0.00}」 – SoloMax 2014-11-04 11:13:13

+0

的鏈接值=「1 345,978」沒有問題。 (「Decimal.TryParse(value,style,culture,out number)) Console.WriteLine(」Converted'{0}'to {1}。「,value,number); else Console.WriteLine(「無法轉換'{0}'。」,value); //顯示器: //無法轉換'1 345,978'。 – SoloMax 2014-11-04 12:23:24

+0

您應該使用fr-FR文化進行分析: Decimal.TryParse(「1 234 012,01」,NumberStyles.Any,CultureInfo.GetCultureInfo(「fr-FR」),out dec) – 2014-11-04 13:00:47

相關問題