c# 多线程异步更新UI
2012-11-22 14:48
543 查看
多线程更新UI
下面是几个关于更新UI的贴子:[align=left]/article/5513668.html [/align]
[align=left]http://www.cnblogs.com/Rustle/archive/2004/05/25/11302.html[/align]
这个写得比较完整的一个实例:
http://www.chenjiliang.com/Article/View.aspx?ArticleID=2038&TypeID=98
转源码:这个是一个用非常简单的方法实现的
//用于更新UI的委托
public delegate void UpdateControl(object objarr, object obj2);
//以上委托的实现函数之一
private void UpdateControl_Method(object objarr,object obj2)
UpdateControl dlupdlbl;
private string DoAsync(int a, int b)
//DoAsync 的委托包装
delegate string dl_DoAsync(int a, int b);
private void MyCallBackMethod(IAsyncResult ar)
private void button3_Click(object sender, EventArgs e)
{
try
{
//更新UI的委托
dlupdlbl = new UpdateControl(UpdateControl_Method);
//需要做异步操作的任务代码执行体
dl_DoAsync dl_doThings = new dl_DoAsync(DoAsync);
//异步完成后的回调函数
AsyncCallback callbak = new AsyncCallback(MyCallBackMethod);
//OK ,让我们开始异步吧
dl_doThings.BeginInvoke(0, 0, callbak, dl_doThings);
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
}
}
相关文章推荐
- c# 多线程异步更新UI
- c#中Winform实现多线程异步更新UI(进度及状态信息)
- !!c# 委托与多线程 -- 相比background来说,本方法针对当需要通过异步代理发起UI操作,而后线程中进行sleep操作的时使用
- c#多线程(UI线程,控件显示更新) Invoke和BeginInvoke 区别
- WPF、WinForm(C#)多线程编程并更新界面(UI)
- C# 异步线程加载数据 更新UI
- C#多线程更新UI
- 转:C# 通过委托更新UI(异步加载)
- WPF、WinForm(C#)多线程编程并更新界面(UI)
- WPF、WinForm(C#)多线程编程并更新界面(UI)(转载积累)
- C#在处理多线程更新到UI控件的多种方法
- Winform实现多线程异步更新UI(进度及状态信息)
- c#异步读取数据库与异步更新ui的代码实现
- Winform实现多线程异步更新UI(进度及状态信息)
- 【WPF学习】WPF、WinForm(C#)多线程编程并更新界面(UI)/子线程更新主界面方式
- C#在处理多线程更新到UI控件的多种方法
- WPF、WinForm(C#)多线程编程并更新界面(UI)
- c# 异步更新UI 不阻塞
- 使用异步消息机制在子线程中更新UI
- AsyncTask下载图片异步更新UI