我有一个包含十进制值列的数据表。 我应该将它绑定到一个下拉列表,其中下拉列表应以百分比形式显示该十进制值的值,而不是“%”符号。我在C#中尝试了以下代码。
DropDownList1.DataTextFormatString = "{0:0%}";
0.981在DropDown列表中显示为98%,如何编写它以避免%符号,这样才会显示98。
答案 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%