当单元格离开时自动格式化datagridview的单元格
您好我想知道如何在每次进行一些更改时格式化2个小数位的单元格。 但我需要只格式化精确列,所以我认为这可能有效:
private void dataGridView1_CellLeave(object sender, DataGridViewCellEventArgs e) { dataGridView1.Columns[2].DefaultCellStyle.Format = "n2"; }
但它没有格式化单元格。 为什么?
您需要包含ValueType
属性才能正确格式化,因为默认情况下它是String
数据类型。 假设您要将其设为Decimal
数据类型,那么您将拥有以下内容。
private void dataGridView1_CellLeave(object sender, DataGridViewCellEventArgs e) { dataGridView1.Columns[2].DefaultCellStyle.Format = "N2"; dataGridView1.Columns[2].ValueType = typeof(Decimal); }
试试吧 ..
dataGridView1.Rows[0].Cells[2].Value=double.Parse(dataGridView1.Rows[0].Cells[2].Value.ToString()).ToString("F",System.Globalization.CultureInfo.InvariantCulture);
从这里