Where do I get a thread-safe CollectionView?

Jonathan Allen picture Jonathan Allen · Jan 26, 2010 · Viewed 35.7k times · Source

When updating a collection of business objects on a background thread I get this error message:

This type of CollectionView does not support changes to its SourceCollection from a thread different from the Dispatcher thread.

Ok, that makes sense. But it also begs the question, what version of CollectionView does support multiple threads and how do I make my objects use it?

Answer

luke picture luke · Dec 16, 2010

Use:

System.Windows.Application.Current.Dispatcher.Invoke(
    System.Windows.Threading.DispatcherPriority.Normal,
    (Action)delegate() 
    {
         // Your Action Code
    });