2011-12-14 22 views
2

如何讓我的數據網格自動向單元格添加逗號以格式化數字。我嘗試將defaultcellstyle的格式更改爲數字,但它沒有幫助。DataGridViewTextBoxColumn在數值單元格中添加逗號

我找它做類似

用戶輸入503412.45

數量顯示將變爲503,412.45

更新:我設置列格式在設計時(通過VS中的屬性窗口)。它不是數據綁定,用戶手動添加行。這些列也是在設計時使用屬性窗口中的Collections選項創建的。

回答

4

DefaultCellStyle.Format設置爲「N2」將執行此操作。

dataGridView1.Columns.Add("foo", "foo"); 
dataGridView1.Columns[0].DefaultCellStyle.Format = "N2"; 
dataGridView1.Rows.Add(1234.567); // shows 1,234.57 

我無法猜測爲什麼它沒有更多的細節爲你工作,所以我可以建議是,你認爲你設置它,但你實際上沒有。你在使用數據綁定嗎?你如何添加列?他們是否自動生成?你在設計時還是運行時設置了格式?

+0

我在設計時(通過VS中的屬性窗口)設置格式。它不是數據綁定,用戶手動添加行。這些列也是在設計時使用屬性窗口中的Collections選項創建的 – JonF 2011-12-15 20:19:26

1

作出獨立當前線程的文化(數字小數點分隔符,號組分隔符)的解決方案的輸出,你必須設置列的格式提供:

CultureInfo ci = CultureInfo.CreateSpecificCulture("en-US"); 

dataGridView1.Columns[0].ValueType = typeof(decimal); 
dataGridView1.Columns[0].DefaultCellStyle.FormatProvider = ci; 
dataGridView1.Columns[0].DefaultCellStyle.Format = "N2"; 

希望,這會有所幫助。

相關問題