平台:C#ASP.NET 3.5
我有一个ListView,它构建一个十进制的Rate字段,如果我只是<% #Eval("Rate") %>
它显示4.5000而不是4.5如果我使用<% #Eval("Rate","{0:#.##}") %>
它显示4.5但不显示0
关于如何绑定十进制字段但仍显示0的任何建议
由于
利
答案 0 :(得分:27)
在格式中使用#.##
表示它应隐藏0.请改用0.00
:
<%# Eval("Rate", "{0:0.00}") %>
请参阅以下示例:
String.Format("{0:0.00}", 123.4567); // "123.46"
String.Format("{0:0.00}", 123.4); // "123.40"
String.Format("{0:0.00}", 123.0); // "123.00"
String.Format("{0:0.##}", 123.4567); // "123.46"
String.Format("{0:0.##}", 123.4); // "123.4"
String.Format("{0:0.##}", 123.0); // "123"
答案 1 :(得分:11)
你试过这个:
<% #Eval("Rate","{0:F2}") %>
答案 2 :(得分:1)
这样可行,它还会添加一个组分隔符:<%# Eval("Rate", "{0:n2}")%>
答案 3 :(得分:0)
除了使用<div></div><p></p>
我还使用:<% #Eval("Rate","{0:F2}") %>
而不是试图使格式做正确的数字位数。
当然,这也可能是css文件中的CSS设置,而不是内联CSS。
答案 4 :(得分:-3)
在服务器端将十进制2位转换为1位。 (十进制值).ToString(“0.0”);