Dispatcher x;
x = Dispatcher.CurrentDispatcher;//取得当前工作线程
progressBar1.Minimum = 0;
progressBar1.Maximum = 100;
progressBar1.Value = 0;
new System.Threading.Thread(delegate()
{
for (int i = 0; i <= 100; i++)
{
x.BeginInvoke(new Action(() =>
{
progressBar1.Value = i;
}), DispatcherPriority.Normal);
i++;
Thread.Sleep(100);
}
}).Start();
本文介绍如何利用Dispatcherx在主线程中更新UI控件,通过创建子线程执行耗时任务并利用Dispatcher的BeginInvoke方法,确保主线程界面的流畅性和交互性。演示了使用ProgressBar控件展示任务进度,适用于需要在复杂操作中保持用户界面响应的应用场景。
795

被折叠的 条评论
为什么被折叠?



