如何在数据表中显示小数点后两位至小数位以显示在datagrid中

时间:2019-11-09 01:25:49

标签: c# .net winforms

我有一个类型为money的表列sales_price。当我通过存储过程检索其值并将该值插入到数据表dtDetail中时,该表随后在数据网格dataListDetail中显示(从WinForm开始),它将向上返回该值到小数点后4位(因为是money类型)。我需要将该值设置为最多两位小数。

private void createTable()
{
    this.dtDetail.Columns.Add("sales_price", System.Type.GetType("System.Decimal"));

    this.dataListDetail.DataSource = this.dtDetail;

    this.dataListDetail.Columns["sales_price"].HeaderText = "Sales Price";

}

在插入 50 50,5 之类的值后,我希望sales_price值显示在数据网格中,并且仅保留小数点后两位(例如 50 ,00 50,50 ),但最终以4个小数位(例如 50,0000 50,5000 )(默认为Money)。

提前谢谢!

2 个答案:

答案 0 :(得分:1)

只需在DefaultCellStyle上设置格式:

this.dataListDetail.Columns["sales_price"].DefaultCellStyle.Format = "C2";

答案 1 :(得分:0)

也许您想要.ToString(“ c2”)?它将转换为您的系统货币格式。