我有datagridview和标题复选框,以检查复选框列中所有复选框(所有复选框0的列的索引)。 我有以下的删除按钮事件代码:如何通过选择C#中的复选框从datagridview中删除多行?
for (int i = 0; i < datagridview.Rows.Count; i++) {
if (Convert.ToBoolean(datagridview.Rows[i].Cells[0].Value) == true) {
datagridview.Rows.RemoveAt(i);
}
}
的datagridview.rows.count持续下降作为行删除,但是我在循环不断增加。因此,不是删除所有选中的行,而只是删除其中的一部分。它不会删除行索引为0,1,2等等的行,并随着代码中的增加而删除datagridview中的新数据。
因为当你删除(i)它在第一次迭代时为0,并且它下面的行移动到索引0,但是我现在在1.反向删除它们。 –