WPF Dispatcher介绍


微软在WPF引入了Dispatcher,那么这个Dispatcher的主要作用是什么呢?
Dispatcher的作用是用于管理线程工作项队列。
主线程负责接收输入、处理事件、绘制屏幕等工作,这样一来,UI界面是主线程创建的,因为子线程不能直接更新由主线程维护的UI界面,所有调用Dispatcher更新UI。

实例:WPF更新UI
方式一

new Thread(()=>{
	this.Dispatcher.Invoke(new Action(()=>{
		//通知主线程去完成更新
	}));
}).Start();

 方式二

Application.Current.Dispatcher.Invoke(new Action(() => {
	Application.Current.MainWindow.Title = "我修改过的窗体标题";
}));

 方式三:异步机制

var task = Application.Current.Dispatcher.BeginInvoke(new Action(() => { 
	Application.Current.MainWindow.Title = "我修改过的窗体标题"; 
}));
task.Completed += new EventHandler(task_Completed);
static void task_Completed(object sender, EventArgs e)
{
	MessageBox.Show("任务已经完成");
}

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM