2

我有一个在 winforms 中使用 AutoGenerateColumns 的 datagridview。有一个日期列,然后是 1-16 个包含数值的数据列。我希望将所有这些 1-16 个数据列格式化为 4 个小数位。

根据这篇文章,您可以通过设计器设置 DefaultCellStyle。我手动执行此操作以获得我想要使用的格式。我在表单构造函数中设置了这个:

this.dgv_PreviewGrid.DefaultCellStyle.Format = "N4";

我尝试过以这种方式设置它,并且还尝试在 DataBindingComplete 事件的每一列上手动尝试。 什么都没发生! 该应用程序滞后,就好像它正在进行舍入一样,但没有。

另外,是否有指向 msdn 的链接或带有 DefaultCellStyle 格式列表的东西?找不到他们。

编辑:我发现使用格式“D4”而不是“N4”(十进制与数字)--> 可能是我想要的格式,但它仍然无法正常工作。

4

1 回答 1

4

您想要的 MSDN 页面是Standard Numeric Format Strings

您需要 N 或 F 格式说明符,而不是 D。D 用于整数。

设置 grid.DefaultCellStyle.Format 应该可以,但由于您有一个日期列,您需要覆盖该列的 DefaultCellStyle,否则日期将不会显示。

数据源上数字属性的实际类型是什么?你确定不是字符串?你是如何填充 DataGridView 的?

没有更多信息,很难猜出问题所在。如果您显示填充 DataGridView 的代码可能会有所帮助。

于 2012-04-03T16:37:00.693 回答