I need to run some part of application in background and allow user to update the UI while the sub is running in the background. I searched and I found out that in WPF I sho
The dispatcher should be used to update UI objects from a separate thread, it does not actually spawn up the thread for you. If you are using .NET 4.0 or higher, you can use the TPL library to spawn your thread, do your work, then update your UI object via the dispatcher from the background thread.
Task.Factory.StartNew(Sub() DoBackgroundWork())
Then, inside DoBackgroundWork whenever you want to update your UI...
Dispatcher.BeginInvoke(Sub() txtBox1.Text = "End")
you can call to the general application.
Application.Current.Dispatcher.Invoke()