如何使用 vb.net 在 datagridview 中将数字格式化为小数点后 3 位

问题描述 投票:0回答:5

我有一个使用 datagridview 的 vb.net Windows 窗体应用程序。我希望找到一种简单的方法来格式化某些 datagridview 单元格数字,最多保留 3 位小数。这是我到目前为止所做的,但似乎并没有正确格式化所有内容。

DataGridView1.Columns(3).DefaultCellStyle.Format = "#.###" 
vb.net datagridview format
5个回答
21
投票

你尝试过这个吗?

DataGridView1.Columns(2).DefaultCellStyle.Format = "N3"

其中“2”是列号(0 是第一列),“N3”表示小数点后 3 位。

这个也可能有帮助:


0
投票

尝试一下

DataGridView1.Sort(DataGridView1.Columns(2), System.ComponentModel.ListSortDirection.Ascending)

DataGridView1.Sort(DataGridView1.Columns(2), System.ComponentModel.ListSortDirection.Descending)

0
投票
Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
    Me.DataGridView1.Columns.Add("TEST", "TEST")
    DataGridView1.Columns("TEST").DefaultCellStyle.Format = "N2"
    DataGridView1.Columns("TEST").ValueType = GetType(Decimal)
End Sub

0
投票

我也有同样的问题。但我的代码是:

for R = 0 to DataGridView1.rows.count-1
DataGridView1.rows(r).cells(3).value=math.round(DataGridView1.rows(r).cells(3).value,2)
Next

R
用于 DataGridView1 的当前行 3 是您的列 我曾经将 datagridview 单元格舍入为“2”位小数,并解决了问题:)

希望能有所帮助:)


0
投票

只需更换:

DataGridView1.Columns(3).DefaultCellStyle.Format = "#.###"

作者:

DataGridView1.Columns(3).DefaultCellStyle.Format = "N3"

其中

"N3"
表示保留三位小数的数值数据。如果所有列都是
"N3"
,您可以使用以下命令立即完成:

DataGridView1.DefaultCellStyle.Format = "N3"

您还可以对数据网格中的所有单元格应用常规单元格对齐方式,例如:

DataGridView1.DefaulCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight

最后,您还可以在 DataGridView 属性窗口中使用 DataGridViewCellStyle 框下的 Format 选项定义常规(所有列)数字格式。

正如你所看到的,这里不需要循环,而样式定义并不具体。

© www.soinside.com 2019 - 2024. All rights reserved.