I have seen this Deployment.Current.Dispatcher.BeginInvoke( ()=> {...} ) format in some code .Is it used to do some work in Background?What are the general uses of it?
When code that updates the UI executes from a thread other than the UI thread, an invalid cross-thread access exception occurs.
The dispatcher allows you to pass some code over to the UI thread from another thread.
The project I put in this post demonstrates this, among other concepts.
WebClient, HttpWebRequest and the UI Thread on Windows Phone 7