私はdatagridviewとヘッダーチェックボックスを使用して、チェックボックス列のすべてのチェックボックス(すべてのチェックボックス0の列のインデックス)をチェックします。 Iは、削除ボタンイベントのコードを以下た:ループ内で削除されたが、私の行が増加し続けるようC#のチェックボックスを選択して、複数の行をデータグリッドビューから削除するにはどうすればよいですか?
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は減少し続けます。したがって、チェックされたすべての行を削除するのではなく、それらの一部だけを削除します。それは私がコードを増やすと、DataGridview内の新しいデータで行インデックス0,1,2などのものを削除しません。
最初の繰り返しでremove(i)を実行すると0になり、その下の行はインデックス0に移動しますが、現在は1になっているため、逆に削除します。 –