首页 文章

如何从datagridview中删除行?

提问于
浏览
0

朋友们,我在windows C#应用程序中使用datagridview . 我们知道,当加载带有datagridview的表单时,会在网格中创建一个默认行 . 如果我们在任何单元格中输入任何内容(我总共有6列,2个隐藏列),则会创建一个新行 . 但是如果我们删除该条目,则不会删除新创建的行 . 通过这种方式,我们可以创建任意数量的行,而不会在任何单元格中保留任何值 . 我希望datagridview最多创建2个这样的行,当两个行中没有值时,要删除的最后一行(这样网格将有1行,其中没有任何数据) . 我试图删除datagridview1_CellValueChanged事件中的行,但它不起作用 . 我应该使用哪个事件以及如何获得所需的功能?请帮忙 .

3 回答

  • 1

    如果使用相同的网格RowCount循环,它将无法工作

    for(int i = 0;i<dataGridMaster.Rows.Count;i++)
                {
                   dataGridMaster.Rows.RemoveAt(i);
                }
    

    它无法正确完成工作,因为行数在循环时会发生变化 .

    而是将数字分配给局部变量,如:

    Int loopNum = dataGridMaster.Rows.Count;
    for(int i = 0;i<loopNum ;i++)
                {
                   dataGridMaster.Rows.RemoveAt(i);
                }
    
  • 0

    试试这个:

    DataGridView1.Rows.Remove(row);
    
  • 0

    我们有两个从DataGridView中删除行的函数

    dataGridView1.Rows.Remove();
    dataGridView1.Rows.RemoveAt();
    

    您可以提供行的索引作为参数来删除行 .

    您可以在DataGridView的Validating或Validated事件中给出

相关问题