Причина, по которой вы видите ошибку, заключается в том, что в конечном итоге вы привязываетесь к List
.List
не включает уведомления об изменениях, которые необходимо получить вашему DataGridView, чтобы отразить сделанные вами изменения.
Если вы действительно хотите обойти эту проблему, вы можете сделать следующее: непосредственно перед тем, как вносить изменения в List
, установите для свойства BindingSource DataSource значение Nothing
.Когда вы закончите вносить изменения, сбросьте ваш List
в DataSource.
Это довольно уродливое решение, как вы можете себе представить.То, что вы захотите сделать, это связать с объектом, который реализует IBindingList
, либо с созданной вами пользовательской коллекцией, либо с BindingList .
.
Обзор элемента управления DataGridView (Windows Forms)