我有一个Datagridview
导入数据,其中包含以下查询:
dt1 = dc.RunQuery("SELECT dbo.Payment.[Date], dbo.Payment.id FROM dbo.Payment INNER JOIN dbo.Moein ON dbo.Payment.FK_MoeinCode = dbo.Moein.MoeinCode ORDER BY dbo.Payment.[Date] ASC");
dataGridView1.DataSource = dt1;
dataGridView1.Columns.Add("2", "Detail");
dataGridView1.Columns.Add("3", "X");
dataGridView1.Columns.Add("4", "Y");
dataGridView1.Columns.Add("5", "Remain");
更多......
在代码的最后,我使用下面的代码:
dataGridView1.Columns[3].DefaultCellStyle.Format = "#,#";
dataGridView1.Columns[4].DefaultCellStyle.Format = "#,#";
dataGridView1.Columns[5].DefaultCellStyle.Format = "#,#";
但这不起作用:(
我想要列3,4,5像这样111,555
。
答案 0 :(得分:0)
您仅使用名称和标题文本向DataGridView
添加了一些未绑定的列。在这种情况下,该列没有ValueType
,因此格式化不会适用于它的值。因此,您应为那些未绑定的列设置ValueType
。
要显示显示千位分隔符的数字格式和小数点后的某些数字(例如2位数),您可以使用N2
格式。
this.dataGridView1.Columns.Add(new DataGridViewTextBoxColumn()
{
ValueType = typeof(decimal),
Name = "Column1",
HeaderText = "Column One"
});
this.dataGridView1.Columns["Column1"].DefaultCellStyle.Format = "N2";
这样,该列显示的数据如下:12,345.67