Обновить BindingList<> из фонового потока?
Мне было интересно, как я мог бы использовать Dispatcher в WPF для безопасного обновления моей коллекции BindingList из другого потока?
Я также открыт для других решений,
Большое спасибо, Каве
1 ответ
Я предпочитаю планирование Task
в поток пользовательского интерфейса. Вы можете получить планировщик потока пользовательского интерфейса, вызвав TaskScheduler.FromCurrentSynchronizationContext
в то время как в потоке пользовательского интерфейса. У MSDN есть пример здесь.
Я вообще предпочитаю SynchronizationContext
решения вместо Dispatcher
решения, потому что они не привязаны к WPF/Silverlight. Таким образом, можно написать общий слой бизнес-объектов, который обрабатывает синхронизацию, но может использоваться из WPF, ASP.NET, Windows Forms, Win32 Services и т. Д.