如何更改特定的datagridview列格式

时间:2015-04-02 11:02:14

标签: c# winforms

我有一个datagridview,以货币格式显示我的记录。我为格式 BUT 永久设置了DefaultCellStyle属性我有一个特定的列,我想将它显示为一个整数。

我想改变的栏目和它显示的内容:

    [AreaCode]
     15,00 €
     25,00 €
     60,00 €

我的期望:

[AreaCode]
   15
   25
   60

这是我的代码无效:

private void dgv1_CellFormatting(object sender, DataGridViewCellFormattingEventArgs e)
    {
  var columnname = "AreaCode";
   if (e.ColumnIndex == dgv1.Columns[columnname].Index)
        {
            //Get the datagridview cell
   DataGridViewCell cell = dgv1.Rows[e.RowIndex].Cells[e.ColumnIndex];
            if (cell != null)
            {
  this.dgv1.Columns["AreaCode"].DefaultCellStyle.Format = "D4";
            }

        }

    }

Thnx提前

1 个答案:

答案 0 :(得分:0)

试试这个

this.dgv1.Columns["AreaCode"].DefaultCellStyle.Format = "N0";

使用N0这会将您的areacode列格式化为带有0十进制广告的数字

private void dgv1_CellFormatting(object sender, DataGridViewCellFormattingEventArgs e)
    {
      var columnname = "AreaCode";
     if (e.ColumnIndex == dgv1.Columns[columnname].Index)
        {
            //Get the datagridview cell
            DataGridViewCell cell = dgv1.Rows[e.RowIndex].Cells[e.ColumnIndex];
            if (cell != null)
            {
             this.dgv1.Columns["AreaCode"].DefaultCellStyle.Format = "N0";
            }

        }

    }

注意:如果您想要一些小数位,那么您可以使用"N1""N2"等等....