我有一个SL应用程序,我有一些事件,一旦用户点击,该应用程序正在做一些工作。 此工作冻结UI直到作业完成(作业修改UI元素)。 如何在SL应用程序中提高UI作业的性能?我读到UI线程是唯一的选择。
谢谢
答案 0 :(得分:2)
您应该使用BackgroundWorker来进行密集的工作。
在工作完成后,它会在主/ UI线程上执行一个事件(RunWorkerCompleted)。
编辑:
如果您的后台作业需要更新UI,则可以使用Dispatcher:
Dispatcher.BeginInvoke on MSDN
示例:
Deployment.Current.Dispatcher.BeginInvoke(() => MessageBox.Show("This is executed on UI thread"));