如何在C#中将非绑定DataGridView列单元格设置为货币格式
给非绑定DataGridView列设置货币格式的方法
嘿,我来帮你搞定这个非绑定DataGridView的货币格式设置问题!其实操作很简单,只需要给目标列的DefaultCellStyle.Format属性指定货币格式,再配合调整单元格对齐方式,就能让显示更规范。
具体实现方式
在你现有的loadfields()方法里,针对需要设置货币格式的列,完成列名称、宽度的基础设置后,添加格式配置代码即可:
比如假设你想把第5列(索引从0开始)设为金额列并添加货币格式,代码可以这么修改:
private void loadfields() { dgvbulkentries.ColumnCount = 15; // 原有的列设置代码 dgvbulkentries.Columns[0].Name = "ID No"; dgvbulkentries.Columns[0].Width = 80; dgvbulkentries.Columns[0].DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter; dgvbulkentries.Columns[1].Name = "Surname"; dgvbulkentries.Columns[1].Width = 150; dgvbulkentries.Columns[2].Name = "First Name"; dgvbulkentries.Columns[2].Width = 150; // ...其他列的设置代码 // 给金额列设置货币格式(以第5列为例) dgvbulkentries.Columns[4].Name = "Amount"; dgvbulkentries.Columns[4].Width = 120; // "c"会自动适配系统区域的货币符号和默认格式(比如中文系统显示¥,英文显示$) dgvbulkentries.Columns[4].DefaultCellStyle.Format = "c"; // 货币内容通常右对齐,更符合阅读习惯 dgvbulkentries.Columns[4].DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight; }
格式参数说明
- 用
"c":自动匹配系统区域的货币规则,默认保留两位小数;如果要指定小数位数,比如保留1位用"c1",保留3位用"c3"。 - 固定自定义格式:如果需要强制显示特定符号和格式,比如强制美元两位小数可以写
"$#,##0.00",强制人民币格式写"¥#,##0.00"。
这样设置后,往该列单元格输入数字时,就会自动以货币格式展示啦!
内容的提问来源于stack exchange,提问作者user9153800
相关产品推荐
相关产品推荐

