Если вы хотите удалить строки из DataGrid, вы должны использовать BindingSource вместо списка, в противном случае вы получите исключение при этом.
попробуйте это:
public partial class YourForm : Form {
private BindingSource _source = new BindingSource();
public YourForm() {
List<Model> list = _service.GetList();
_source.DataSource = list;
_grid.DataSource = _source;
}
}
Теперь вы можете поиграть со своим источником данных, и сетка будет вести себя сама. Не забывайте вызывать _grid.Refresh () после каждого изменения.
Приветствия
Андре Карлуччи