昨天在线程里用到委托来改变UI控件,查了一下资料,感觉没有特别具体的,于是以新手的眼光写了一个很基础的留着自己回顾与新手学习
第一次发文,逻辑乱,请见谅呀 偶咔咔咔
1. 委托的定义
在一个类中定义委托,保证form中与子线程中都可以引用到这个委托public class DelegateCollection
{
public delegate void updateUIContorl(string txt);
}
2. 委托的声明
在子线程中对委托声明具体的实例,保证子线程可以直接调用委托,而不用实例化public class SonThread
{
public DelegateCollection.updateUIContorl myDelegate;
public void runThread()
{
string txt = "";
//...
//委托的调用 也可以简写成myDelegate?.BeginInvoke(txt,null,null);
if (myDelegate != null)
{
myDelegate(txt);
}
}
}