private void 四项ToolStripMenuItem_Click(object sender, EventArgs e)
        {           
                tj sx = new tj();
                DataTable tmpdt = new DataTable();
                tmpdt = sx.tjdtat("");                
                dataGridView1.DataSource = tmpdt;                
                for (int i = 0; i < tmpdt.Columns.Count-3; i++)
                {
                    dataGridView1.Columns[2+i].DefaultCellStyle.Format = "N2";                    
                }
   }     为什么上面的代码没有用呢?
dataGridView1.Columns[2+i].DefaultCellStyle.Format = "N2";     这个没有用

解决方案 »

  1.   

    dataGridView1.CellFormatting += new
            DataGridViewCellFormattingEventHandler(dataGridView1_CellFormatting);
    在CellFormatting 中设置一下!
      

  2.   

    MSDN上查的:ms-help://MS.MSDNQTR.v90.chs/fxref_system.windows.forms/html/1648ae0a-6a88-27ff-4a6b-2c32b03e6a36.htm
      

  3.   


    DataTable dt = new DataTable();
    dt.Columns.Add("val", typeof(double));
    dt.Rows.Add(new object[] { 1.234});
    dt.Rows.Add(new object[] { 23.5566});
    dataGridView1.Columns[0].DataPropertyName = "val";
    dataGridView1.AutoGenerateColumns = false;
    dataGridView1.DataSource = dt;要事先为dataGridView1设好列,设置自动添加列为false