使用一个查询按钮,如何在点击查询按钮后先清空原来的数据,让它不叠加数据。
            this.DgvPO.Rows.Clear();
this.DgvPO.DataSource = null;
用了这两个都不行,第一个会报错!
第二个会继续叠加!
请教在winform设计中如何处理!谢谢

解决方案 »

  1.   

    第一种:dataGridView.DataSource = null;第二种: while (this.dataGridView.Rows.Count != 0)
                {
                    this.dataGridView.Rows.RemoveAt(0);
                }
      

  2.   

    datagridview.SetDataBind(null,null);
    datagridview.update();
      

  3.   

    继续叠加的是你的数据表记录吧?不是datagridview
      

  4.   


    DataGridViewTextBoxColumn col = new DataGridViewTextBoxColumn();
                col.Name = "colID";
                col.HeaderText = "出荷批号";
                col.DataPropertyName = "mo_no";
                DgvPO.Columns.Add(col);这样增加的
      

  5.   

    this.dataGridView1.Rows.Clear();
      

  6.   

    查询的数据先传输入给DataSet,然后在写入到dataGridView1
    清除DataSet.Tables.Clear();
      

  7.   


    这个是增加列,如果你要清空列的话就dataGridView1.Columns.Clear()。
    你添加记录是绑定到数据源的还是自己一行一行增加的?
      

  8.   

    OK,这样:
    this.DgvPO.Rows.Clear();
    this.DgvPO.Columns.Clear();
    this.DgvPO.DataSource = null;如果是绑定数据的,不要前两句.
      

  9.   

    this.DgvPO.Rows.Clear();
    这个怎么会报错呢?
    我一直都是这么用的
      

  10.   

     楼主,改成如下:           DgvPO.Columns.Clear();
                DgvPO.DataSource = null;
                DgvPO.DataSource = table;   //绑定最先的数据源
      

  11.   

    查询后再进行数据绑定
    this.DgvPO.DataSource=datasource; //datasource 就是查询后需要绑定的数据源
    this.DgvPO.DataBind();
      

  12.   

    楼上说用“this.dataGridView1.Rows.Clear();易出错”,用dataset.Tables["xx"].Clear()可以。 
    if (dataSet.Tables["deport"] != null)//判断之前是否数据 
      {
       //下一次加载数据前清空数据。
        dataSet.Tables["deport"].Clear();
      }
       string depo = this.tvOp.SelectedNode.Text;
       string sql = string.Format("select * from deport where DEPORT='{0}'", depo);
        //创建DataAdapter对象
          dataAdapter = new SqlDataAdapter(sql, DBHelper.connection);
         dataAdapter.Fill(dataSet,"deport");//填充dgv.
         dgvInf.DataSource=dataSet.Tables["deport"];