DataGridViewに100行あります。私は、次に示すように各行を削除しますが、IDの回りにループするので、0,2,4,6,8となり、その結果偶数行だけが削除されます。どうしたの?DataGridView行を削除すると、代替行だけが削除されます
foreach (DataGridViewRow row in dgvData.Rows)
{
try
{
if (row.IsNewRow)
continue;
string PalletID = row.Cells[1].Value.ToString();
string Location = row.Cells[2].Value.ToString();
dgvData.Rows.Remove(row);
AddToList(PalletID + " located in " + Location + " was uploaded");
}
catch (Exception ex)
{
MessageBox.Show("Error Uploading Data");
AddToList("Error uploading data " + ex.Message);
continue;
}
}
奇妙なことに私は同じループを行う削除ボタンがありますが、それは行ではなく選択された行の上にあり、それはうまく動作します。 – Jon
'SelectedRows'はまったく別のコレクションなので、このケースではDataGridViewの実際の行を実行していると思います – V4Vendetta