У мене є ObservableCollection<A> a_collection;
колекція, що містить 'n' елементів. Кожен елемент А виглядає так:
public class A : INotifyPropertyChanged
{
public ObservableCollection<B> b_subcollection;
Thread m_worker;
}
По суті, все це підключено до перегляду списку WPF + b_subcollection
елемента керування переглядом деталей, який відображає вибраний елемент в окремому перегляді списку (двосторонні прив'язки, оновлення властивостей, змінених тощо).
Проблема виявилася для мене, коли я почав впроваджувати різьбу. Повна ідея полягала в тому, щоб a_collection
використовувати весь робочий потік, щоб "виконувати роботу", а потім оновлювати їх відповідно, b_subcollections
і графічний інтерфейс повинен показувати результати в режимі реального часу.
Коли я спробував це, я отримав виняток, сказавши, що лише потік Dispatcher може змінювати ObservableCollection, і робота зупинилася.
Хто-небудь може пояснити проблему і як її обійти?