DataGridView: как подружить биндинг с многопоточностью?
C# приложение, UI на WinForms. Есть List, в который из разных потоков добавляются и удаляются объекты, меняются их свойства. Также есть DataGridView, на котором должны отображаться и обновляться в реальном времени эти объекты. BindingList не подходит, события PropertyChanged приходят из разных потоков.
Как я представляю, нужно написать класс-прокси, который будет перехватывать события PropertyChanged и CollectionChanged от коллекции, маршалить их в UI поток и тогда все заработает как надо.
Так обновляйте данные в основном потоке и события будут от него приходить. Смысл обновлять данные в разных?
Есть контекст синхронизации его и используйте.