Несколько потоков для загрузки разных сеток, привязанных к разному набору коллекций, извлеченных из базы данных - PullRequest
1 голос
/ 29 ноября 2011

У меня есть приложение wpf, созданное с использованием шаблона проектирования MVVM.В данном представлении есть 5 сеток, привязанных к другому набору коллекций, т.е. 5 коллекций для 5 сеток.Теперь я не хочу вешать пользовательский интерфейс, пока 5 наборов данных извлекаются из базы данных.

Пожалуйста, дайте мне знать, если следующее решение является хорошей идеей, пожалуйста, предложите одно:

  1. 5 наблюдаемых коллекций для привязки к сеткам
  2. 5 делегатов, вызывающих BeginInvoke для операции db, и у каждого будет IEnumerable Collection<Type> при EndInvoke.
  3. Делегат при неполном обратном вызовезаполнит ObservableCollection<Type> из IEnumerable collection<Type>, чтобы диспетчер мог обновить пользовательский интерфейс из потока пользовательского интерфейса, поскольку begininvoke будет работать в потоке потоков.

1 Ответ

0 голосов
/ 29 ноября 2011

Вы должны использовать компонент BackgroundWorker, чтобы упростить процесс переноса работы в фоновый поток и последующей синхронизации с пользовательским интерфейсом.В противном случае ваш общий подход звучит просто найти.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...