如何在多线程中调用winform窗体控件2——实例篇
针对之前文章《如何在多线程中调用winform窗体控件》,下面举个我项目中的实际案例,这是一个我自定义控件在异步设置焦点时的代码。在新创建的线程中获取主线程的控件句柄,然后触发其控件的方法(注:this.RowName为控件,SetFocus()为需要异步执行的方法)。
public void SetFocus_Asynchronous()
{
Thread thread =
new Thread(
new ThreadStart(
() =>
{
this.RowName.BeginInvoke(
new EventHandler(
(object o, System.EventArgs e) =>
{
this.RowName.SetFocus();
}));
}
));
thread.Start();