вы не можете удалить более одной строки за раз, но мы можем обмануть c #.
на самом деле, когда вы удаляете одну строку из вида сетки с помощью этого оператора GridData.Rows.RemoveAt(RowIndex);
количество строк уменьшается на единицу, и индекс строки будет меняться, поэтому вы должны быть осторожны с этим.
здесь вы можете сначала создать целочисленную переменную, равную нулю, а когда вы удалите одну строку, увеличьте ее на единицу.
во-вторых, поместите индекс строк, которые вы хотите удалить, в массив, а затем используйте цикл for для удаления строк, но снова позаботьтесь о том, чтобы при отправке вашего параметра.
int deletedValue = 0 ;
for (int j = 0; j < counter; j++)
{
if (Array.binarySearch(myArray,j)){
GridData.Rows.RemoveAt(j-deletedValue); deletedValue++;`
}
else {//The non deleted rows}}
}