【发布时间】:2016-02-01 04:54:42
【问题描述】:
我正在使用 WinForms 应用程序,格式化后在视图中显示一个字符串。
这是我尝试格式化数字的方式:
reportData.VelocityRangeStart.ToString(reportData.Velocity.FormatString)
以下是在 Visual Studio 中使用即时窗口的结果:
reportData.VelocityRangeStart
12.5996475 // output
reportData.Velocity.FormatString
"#,##0.000" // output
reportData.VelocityRangeStart.ToString(reportData.Velocity.FormatString)
"12.59965" // output
12.5996475f.ToString("#,##0.000")
"12.600" // output
有人可以解释我缺少什么吗?在这种情况下,我希望"12.600"。仅供参考:reportData.VelocityRangeStart 属于 float? 类型。
【问题讨论】:
-
请查看minimal reproducible example 指导 - 您发布的任何代码都非常混乱。
-
reportData.VelocityRangeStart的类型是什么?将其转换为浮点数会首先改变结果吗? -
如果你这样做
reportData.VelocityRangeStart.Value.ToString(reportData.Velocity.FormatString),它还会这样做吗? -
@AlexeiLevenkov,删除了这些笑话。如果您一次粘贴整个内容,代码仍然无法编译。但是,如果您复制并粘贴每个输入行,您的指尖就很方便了。
标签: c# number-formatting