1

我不知道为什么,但今天我一直在为一些非常简单的事情而奋斗。

我正在处理分配给同时位于中继器内的 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 中包含格式。就在转发器绑定的那一刻的代码后面。

4

2 回答 2

4

“0.000”格式将 5.3 显示为 5.300,0 将显示 0.000

使用“#”占位符只会在该位置有值时显示该值。

于 2013-07-25T20:11:32.263 回答
3

您可以将 .ToString() 与自定义说明符一起使用。在下面的代码中,lblTotal.Text 将设置为“5.300”。

var myValue = 5.3;
lblTotal.Text = myValue.ToString("0.000");
于 2013-07-25T20:21:56.800 回答