我是这样做的:
  int count = this.dataGridView1.Columns.Count;
            for (int i = 0; i < count; i++)
            {
                DataGridViewColumn column = this.dataGridView1.Columns[i];
                if (column is DataGridTextBoxColumn)
                    this.dataGridView1.Columns.RemoveAt(i);
            }
但是没有效果出来。希望知道的帮帮忙,谢谢。

解决方案 »

  1.   

          for (int i = dataGridView1.Columns.Count - 1; i >= 0; i--)
          {
            if (dataGridView1.Columns[i] is DataGridViewTextBoxColumn)
            {
              dataGridView1.Columns.Remove(dataGridView1.Columns[i]);
            }
          }
      

  2.   

    不是DataGridTextBoxColumn是DataGridViewTextBoxColumn而且不要顺着找,因为删除后count会变少int count = this.dataGridView1.Columns.Count;
                for (int i = count - 1; i >= 0; i--)
                {
                    DataGridViewColumn column = this.dataGridView1.Columns[i] ;
                    if (column  is DataGridViewTextBoxColumn)
                        this.dataGridView1.Columns.RemoveAt(i);
                }
      
    *****************************************************************************
    欢迎使用CSDN论坛专用阅读器 : CSDN Reader(附全部源代码) http://feiyun0112.cnblogs.com/
      

  3.   

    dataGridView1.Columns.Remove("列名");