Accessing UI (Main) Thread safely in WPF
You can use Dispatcher.Invoke(Delegate, object[]) on the Application‘s (or any UIElement‘s) dispatcher. You can use it for example like this: Application.Current.Dispatcher.Invoke(new Action(() => { /* Your code here */ })); or someControl.Dispatcher.Invoke(new Action(() => { /* Your code here */ }));