【问题标题】:How to display exact decimal value instead of exponential in DataTable如何在 DataTable 中显示精确的十进制值而不是指数
【发布时间】:2013-07-16 11:28:29
【问题描述】:

我有一个附加到 DataGrid 的数据表,其中几列有十进制值,我们可以在 GUI 中编辑这些值,但是当我编辑从 0.01 到 0.000000001 的值时,它会显示 1E+8 的东西来自 GUI 的 DataGrid 中的指数值。

所以任何人都可以帮助我,我怎样才能显示精确值而不是指数。

谢谢 @Nag

【问题讨论】:

  • 我尝试将当前文化信息附加到线程,但它不会给我想要的输出。

标签: c# wpf datagrid datatable


【解决方案1】:
columnName.DefaultCellStyle.Format = "0.00#######"

【讨论】:

  • 这是否适用于任何值,我可能会得到 0.0138、0.000001、123.1 之类的值...这些是动态列
  • 它表示单元格应包含小数点后 2 到 9 位的十进制值。 123.1 将变为 123.10,如果您希望它保持 123.1,格式为“0.0########”,也就是小数点后 1 到 9 位。
  • 感谢您的快速回复,我的意思是数据表中应该有什么值应该显示在具有动态列的 DataGrid 中。我正在为我的 DataGrid 获取值,一切都很好,除了 0.0000001 之类的值,它在 DataGrid 中显示指数值。
【解决方案2】:

//C#代码

this.dataGridView1.Columns[i].DefaultCellStyle.Format = "N";

【讨论】:

  • 具有动态列的DataGrid
  • 动态列是什么意思,你不知道列在网格中的位置吗?
  • 这意味着列将在运行时根据要求创建。也只是将数据表附加到DataGrid,因此只需要对数据表进行修改。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-10-26
  • 1970-01-01
  • 2017-05-21
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多