Задать вопрос
@trauus

DataGridView: как подружить биндинг с многопоточностью?

C# приложение, UI на WinForms. Есть List, в который из разных потоков добавляются и удаляются объекты, меняются их свойства. Также есть DataGridView, на котором должны отображаться и обновляться в реальном времени эти объекты. BindingList не подходит, события PropertyChanged приходят из разных потоков.

Как я представляю, нужно написать класс-прокси, который будет перехватывать события PropertyChanged и CollectionChanged от коллекции, маршалить их в UI поток и тогда все заработает как надо.

Есть ли иные способы добиться нормальной работы?
  • Вопрос задан
  • 360 просмотров
Подписаться 1 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • OTUS
    C# Developer. Professional
    6 месяцев
    Далее
  • Ulearn.me
    Основы программирования на примере C#. Часть 1
    1 неделя
    Далее
  • Software-testing.ru
    Программирование на C# для тестировщиков
    10 недель
    Далее
Пригласить эксперта
Ответы на вопрос 1
petermzg
@petermzg
Самый лучший программист
Так обновляйте данные в основном потоке и события будут от него приходить. Смысл обновлять данные в разных?
Есть контекст синхронизации его и используйте.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы