У меня есть ObservableCollection<A> a_collection;
коллекция содержит n элементов. Каждый элемент A выглядит так:
public class A : INotifyPropertyChanged
{
public ObservableCollection<B> b_subcollection;
Thread m_worker;
}
По сути, все это связано со списком WPF + b_subcollection
элементом управления подробным представлением, который показывает выбранный элемент в отдельном списке (двусторонние привязки, обновления при изменении свойств и т. Д.).
Проблема обнаружилась у меня, когда я начал реализовывать потоки. Вся идея заключалась в том, чтобы весь a_collection
рабочий поток использовался для «работы», а затем обновлял их b_subcollections
и отображал результаты в реальном времени.
Когда я попробовал это, у меня было исключение, в котором говорилось, что только поток Dispatcher может изменять ObservableCollection, и работа остановилась.
Может ли кто-нибудь объяснить проблему и как ее обойти?