C# - SQL 添加 DataGridView 时出现查询舍入问题
C# - SQL Query Rounding Problem while adding DataGridView
我有一个 SQL 查询,它有逗号值。当我将它添加到 DataGridView 时,我想要这种格式 (#, ##).
我尝试了 Math.Round()
函数,但它不起作用。
下面是我试过的查询:
(CONVERT(DECIMAL(18, 2), column3)*100) as normalize
这是我添加的C#代码;
dgv.Rows.Add(rows["column1"].ToString() + " " + rows["column2"].ToString(), rows["column3"], "%" + "" + Math.Round(Convert.ToSingle(rows["normalize"].ToString())), 2);
此代码运行时不带逗号。通常,如果我不使用 Math.Round,它的工作方式类似于这种格式 (#, ####).
我也试过这个;
dgv.Columns[2].DefaultCellStyle.Format = "N2";
我该如何解决?
试试这个,添加值类型 属性,它适用于我的情况。
dgv.Columns[2].DefaultCellStyle.Format = "N2";
dgv.Columns[2].ValueType = typeof(Double);
完整代码示例
object[] row = new object[] { 6.54553 };
dataGridView1.Rows.Add(row);
dataGridView1.Columns[0].DefaultCellStyle.Format = "n2";
dataGridView1.Columns[0].ValueType = typeof(double);
我有一个 SQL 查询,它有逗号值。当我将它添加到 DataGridView 时,我想要这种格式 (#, ##).
我尝试了 Math.Round()
函数,但它不起作用。
下面是我试过的查询:
(CONVERT(DECIMAL(18, 2), column3)*100) as normalize
这是我添加的C#代码;
dgv.Rows.Add(rows["column1"].ToString() + " " + rows["column2"].ToString(), rows["column3"], "%" + "" + Math.Round(Convert.ToSingle(rows["normalize"].ToString())), 2);
此代码运行时不带逗号。通常,如果我不使用 Math.Round,它的工作方式类似于这种格式 (#, ####).
我也试过这个;
dgv.Columns[2].DefaultCellStyle.Format = "N2";
我该如何解决?
试试这个,添加值类型 属性,它适用于我的情况。
dgv.Columns[2].DefaultCellStyle.Format = "N2";
dgv.Columns[2].ValueType = typeof(Double);
完整代码示例
object[] row = new object[] { 6.54553 };
dataGridView1.Rows.Add(row);
dataGridView1.Columns[0].DefaultCellStyle.Format = "n2";
dataGridView1.Columns[0].ValueType = typeof(double);