簡體   English   中英

在DataGridView的數字列中更改數字組分隔符

[英]Change number group separator in numeric columns of DataGridView

我想以這種方式格式化數字的單元格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;

它不是很優雅,但是可以正常工作。

請參閱此鏈接以獲取單元格樣式格式>>

http://msdn.microsoft.com/en-us/library/dwhawy9k.aspx

this.dgv_PreviewGrid.DefaultCellStyle.Format = "D4";

D代表整數。

要在DataGridView更改數字組分隔符,可以創建特定的區域性,然后將其NumberFormat.NumberGroupSeparator設置為新值,然后將DataGridView DefaultCellStyle.FormatProvider設置為修改后的區域性:

var culture = CultureInfo.CreateSpecificCulture("en-GB");
culture.NumberFormat.NumberGroupSeparator = " ";
dataGridView1.DefaultCellStyle.FormatProvider = culture;
dataGridView1.Columns[1].DefaultCellStyle.Format = "N2";

您可以嘗試這個。

//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"; 

在數據網格CellFormatting事件中執行以下操作:

private void dg_CellFormatting(object sender, DataGridViewCellFormattingEventArgs e)
{
    if (cell.Value is decimal)
    {
        e.CellStyle.Format = "0.##";
    }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM