我不知道为什么,但今天我一直在努力寻找一些非常简单的事情。
我正在处理分配给同时位于转发器内的Label的Text属性的十进制值。
在我的转发器ItemDataBound中,我正在这样做:
//myValue eventually could be just an integer but I want it in decimal format.
lblTotal.Text = string.Format("{0:0.000}", myValue);
我之前尝试过这个:
lblTotal.Text = string.Format("{0:#.###}", myValue);
什么都行不通!我想显示来自数据库的那种格式的值,但是当用任何操作的回发刷新表时,我的值变为“0”但它必须是“0.000”。如果它是“5.300”则变为“5.3”
我做错了什么?
我没有在HTML中包含格式的内容。就在转发器绑定时刻的代码中。
答案 0 :(得分:4)
格式“0.000”将5.3显示为5.300,0将显示0.000
使用“#”占位符只会在该位置有值时显示该值。
答案 1 :(得分:2)
您可以将.ToString()与自定义说明符一起使用。在下面的代码中,lblTotal.Text将设置为“5.300”。
var myValue = 5.3;
lblTotal.Text = myValue.ToString("0.000");