【发布时间】:2014-01-31 12:06:58
【问题描述】:
我有这个应用程序,它要求用户介绍一些价格等。使用 dataGridViews 也可以显示。问题是在某些计算机上 '.' 这被视为 ',' 我设法获得一些 TextBox 离开事件并为其设置不变文化但是因为我使用 dataGridViews 来显示和 ReportViewer 我也有一个将数字转换为文本的代码和这个问题我的应用程序在这个文化问题的当前状态下毫无价值,所以我需要将所有内容设置为不变文化,无论它采用什么值例如:
2.00 as 200,00 在那台计算机上我想使用不变的文化,无论是什么都显示2.00 使用'.' 而不是','。
【问题讨论】:
-
您不会将所有内容都设置为不变的文化,而是设置不变的文化,然后在相关的地方使用它。当您应该在应用程序中设置一个不变量并在执行此操作时使用它时,您将在某个地方往返字符串并假设文化。如果您有 FxCop,您可以启用全球化规则,它会为您跟踪所有有问题的代码。 Parse、TryParse、Convert、ToString 和 String.Format 是常见的嫌疑犯。
-
正如我所说,我还需要在 dataGridView 中使用来显示“。”而不是','
-
不是关于你需要什么,它,关于用户需要什么,他们需要在他们的文化中输入和查看数据,而不是你的,因为你正在努力正确地编写软件。
-
这可能有点苛刻。关于 .net 中的全球化和本地化的问题是,一旦您开始始终如一地使用它,它就会起作用。如果你试图弯曲它或走捷径,你最终会一团糟。
标签: c# datagridview formatting numbers