跨线程调用控件 Invoke 与 BeginInvoke 区别

时间:2022-06-20 19:46:44
public  delegate void Add_B(object x);



List
<object> Ls = new List<object>();

Ls.Add(i);

Ls.Add(
"你好");


this.Invoke(new Action<object>(this.Add), Ls);

//new Action<T>可以传递至多16种不合的参数类型.

//例如:Action<in T1>调用带一个参数的办法,Action<in T1,in T2>.

//new Action 无参数传递的封装委托方法

//this.Invoke(new Add_B(Add),Ls);自定带传递参数的委托方法。

//this.Invoke(new Add_B(Add),new object[]{"你好","这是传递第二个参数"});.

static void Add(object x)

{

List
<object> LL = (List<object>)x;

textbox1.Text
= (string)LL[1];

}