我想以这种方式格式化数字单元格1 231 241.45
。我试过N2
格式选项:
datagridview1.Columns["col1"].DefaultCellStyle.Format = "N2";
但是N2
格式用逗号代替空格。我想要空格作为数字组分隔符。是否可以更改数字组分隔符?
我想以这种方式格式化数字单元格1 231 241.45
。我试过N2
格式选项:
datagridview1.Columns["col1"].DefaultCellStyle.Format = "N2";
但是N2
格式用逗号代替空格。我想要空格作为数字组分隔符。是否可以更改数字组分隔符?
我设法使它与以下代码一起工作:
string NRFormat="### ### ##0.00"
datagridview1.Columns["col1"].DefaultCellStyle.Format = NRFormat;
datagridview1.Columns["col2"].DefaultCellStyle.Format = NRFormat;
它不是很优雅,但它正在工作。
要更改数字组分隔符,DataGridView
您可以创建一个特定的文化,然后将其设置NumberFormat.NumberGroupSeparator
为新值,然后将其设置DefaultCellStyle.FormatProvider
为DataGridView
修改后的文化:
var culture = CultureInfo.CreateSpecificCulture("en-GB");
culture.NumberFormat.NumberGroupSeparator = " ";
dataGridView1.DefaultCellStyle.FormatProvider = culture;
dataGridView1.Columns[1].DefaultCellStyle.Format = "N2";
请参阅此链接以获取单元格样式格式>>
http://msdn.microsoft.com/en-us/library/dwhawy9k.aspx
this.dgv_PreviewGrid.DefaultCellStyle.Format = "D4";
D 代表整数。
在数据网格CellFormatting
事件中执行以下操作:
private void dg_CellFormatting(object sender, DataGridViewCellFormattingEventArgs e)
{
if (cell.Value is decimal)
{
e.CellStyle.Format = "0.##";
}
}
你可以试试这个。
//1000001 convert to 1 000 001.00
datagridview1.Columns["col1"].DefaultCellStyle.Format = "### ### ##0.00";
//1000 convert to 1 000.00
datagridview1.Columns["col2"].DefaultCellStyle.Format = "### ### ##0.00";