我想删除额外的零,如果他们没有任何十进制值。但如果他们有,我想向他们展示。 十进制的修整零
在图片中,我想从10.00和20.00高度不必要的0。但我想显示下面的其他3条记录。
我用c#,asp.net 4.0和GridView来显示。
我想删除额外的零,如果他们没有任何十进制值。但如果他们有,我想向他们展示。 十进制的修整零
在图片中,我想从10.00和20.00高度不必要的0。但我想显示下面的其他3条记录。
我用c#,asp.net 4.0和GridView来显示。
我看不到图片,但它听起来像只需要一个格式字符串:#
字符表示一个数字(如果需要),而0
字符表示您将始终有一个数字。所以一个"#.##"
的格式字符串听起来像它可能是你所需要的。
我相信“#”自定义格式字符可能适合你。看看MSDN上的“自定义数字格式字符串”:
http://msdn.microsoft.com/en-us/library/0c899ak8.aspx
你需要指定你的GridView配置中的“格式”列地方。
尝试
<asp:BoundField DataField="Weight" DataFormatString="{0:#.##}" />
如果你有麻烦的格式是Kathy Kam's .NET Format String 101最终的资源给你的。
你可以随时按照程序员的方式去做。
定义一个TemplateField,它是一个标签,其Text属性如下绑定:Text='<%# WeightText(Container.DataItem) %>'
。
在后面的代码中定义WeightText方法,该方法将Container.DataItem作为参数。
protected string WeightText(object dataItem)
{
// cast it to your object
MyObject myObject = (MyObject)dataItem;
decimal d = (decimal)myObject.Weight;
decimal fraction = d - decimal.Remainder(d);
if(fraction > 0)
return d.ToString(); // string with fraction (format this however you want)
else
return decimal.Remainder(d).ToString(); // string without fraction (format this however you want)
}