繁体   English   中英

datagridview不显示货币格式

[英]datagridview not displaying currency format

首先,我使用以下内容填充DataGridView

        dta = New OleDbDataAdapter("Select * From [" & ActName & "$B6:E" & LastEntryRow & "]", cn)
        dts = New DataSet
        dta.Fill(dts, "Detailtable")
        DataGridView1.DataSource = dts
        DataGridView1.DataMember = "Detailtable"

然后,我格式化了包含以下代码的DataGridView:

    Dim currencyCellStyle As New DataGridViewCellStyle
    currencyCellStyle.Format = "C2"

    With Me.DataGridView
        .Columns(1).DefaultCellStyle = currencyCellStyle
        .Columns(2).DefaultCellStyle = currencyCellStyle
    End with

这很好。 列将其值显示为$ 1234.00。 将新值添加到列中后,它们立即显示为$ 1234.00。 (目前为止)

如果在创建数据集时某列没有任何值,则该数据列的datagridview中不会显示任何值。 (到目前为止没有问题)

但是,所有添加到空白列的新值都显示为1234.00。 不是$ 1234.00。

我尝试刷新DataGridView,在更改单元格后重新格式化了DataGridView。 它仍然显示为1234.00。

如果我保存更改,请重新创建DataSet并重新填充DataGridView,一切正常。

当新值直接添加到列中时,我需要DataGridView反映正确的格式($ 1234.00)。

如果您使用此行

DataGridView1.Columns(1).DefaultCellStyle.Format = "C2"

它必须可以工作,但是如果您的数据库列格式不是十进制 (而是TEXT),则这种格式将永远无法使用。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM