2015-04-02 92 views
0

我有一個datagridview以貨幣格式顯示我的記錄。我設置DefaultCellStyle屬性永久爲格式但是我有一個特定的列,我想要顯示它的值作爲一個整數。如何更改特定的datagridview列格式

的專欄中,我想改變它顯示的內容:

[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提前

+0

怎麼樣'D2'而不是? 'D4'使您的值爲'0015','0025'和'0060'。 – 2015-04-02 11:04:37

+0

嗨 聽起來不錯,但我的代碼有問題。錯誤: 未將對象引用設置爲對象實例。 – mikybrain 2015-04-02 11:18:35

+0

閱讀:[什麼是'NullReferenceException',我該如何解決它?](http://stackoverflow.com/questions/4660142/what-is-a-nullreferenceexception-and-how-do-i-fix-it ) – 2015-04-02 11:26:39

回答

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"依此類推......

相關問題