代码之家  ›  专栏  ›  技术社区  ›  Pieter888

如何在C#中清空DataGridView的单元格?

  •  2
  • Pieter888  · 技术社区  · 16 年前

    因此,我正在使用VisualStudio2008在windows窗体应用程序中工作。语言是C#

    不 绑定到数据源。

    因此:

    MyDataGridView.DataSource = null;
    

    行不通。。。

    MyDataGridView.Rows.Clear();
    

    但这会删除所有自定义行。

    5 回复  |  直到 6 年前
        1
  •  3
  •   Evgeny    10 年前
    for (int i = 0; i < MyDataGridView.Columns.Count ;i++ )
      {
          for (int j = 0; j < MyDataGridView.Rows.Count; j++)
          {
               MyDataGridView.Rows[j].Cells[i].Value = DBNull.Value;
          }
      }
    
        2
  •  0
  •   Pieter888    16 年前

    我自己就知道怎么做了,我只是在桌子上循环,清理我遇到的每一个细胞。

    注意:“dgUsers”是我的DataGridView的名称

    for (int i = 0; i < dgUsers.Columns.Count ;i++ )
          {
              for (int j = 0; j < dgUsers.Rows.Count; j++)
              {
                   dgUsers.Rows[j].Cells[i].Value = "";
              }
          }
    

        3
  •  0
  •   Blazen    15 年前

    pieter888的代码对我不起作用我发现的代码是

    int cnt=dataGridView1.Rows.Count;
            for (int i = 0; i < cnt; i++)
            {
                dataGridView1.Rows.Remove(dataGridView1.Rows[0]);
            } 
    
        4
  •  0
  •   Rene Alberto Zurita Sanchez    11 年前

        foreach (var cell in from DataGridViewRow row in dgv.Rows from DataGridViewCell cell 
        in row.Cells select cell){
            cell.Value = string.Empty;
         }
    
        5
  •  -2
  •   Mark Hall    14 年前

    可以使用清除整个栅格

    gridviewname.columns.clear();