我有一个数据表,其中我有一个十进制值列

时间:2015-07-21 11:54:29

标签: c# asp.net

我有一个包含十进制值列的数据表。 我应该将它绑定到一个下拉列表,其中下拉列表应以百分比形式显示该十进制值的值,而不是“%”符号。我在C#中尝试了以下代码。

DropDownList1.DataTextFormatString = "{0:0%}";

0.981在DropDown列表中显示为98%,如何编写它以避免%符号,这样才会显示98。

1 个答案:

答案 0 :(得分:1)

The "%" custom specifier将您的值乘以100并使用CurrentCulture的{​​{3}}。这意味着您的CurrentCulture %PercentSymbol,此自定义符号必须使用它。

作为解决方案,您可以Clone CurrentCulture并将PercentSymbol设置为空字符串,然后您可以为Thread.CurrentThread.CurrentCulture使用 文化和Thread.CurrentThread.CurrentUICulture属性。

var clone = (CultureInfo)CultureInfo.InvariantCulture.Clone();
clone.NumberFormat.PercentSymbol = "";
Thread.CurrentThread.CurrentCulture = clone;
Thread.CurrentThread.CurrentUICulture = clone;

现在,当您执行DropDownList1.DataTextFormatString = "{0:0%}";时,您将获得98而非98%