线程间如何访问控件方法?

wanbolantian wanbolantian 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
我有一个主窗口,上面有一个按钮,这个按钮要加载A窗口,而A窗口由于业务需要,放了大量的图片和第三方控件,导致加载时很慢,为避免用户以为窗体卡死,我开启了一个新线程,在这个线程里加载B窗口,用于显示一个动画,提示用户正在加载窗体A。现在的问题是,如何在加载完窗体A后,让B窗口关闭?我试过如下代码,但会提示“窗口不是该线程创建,不能访问”。网上搜了一下,都说的是用委托来安全访问线程控件,但看得不太明白,能根据我的代码给点提示么?多谢!

VMS.frm.system.floading floading = new frm.system.floading();

Task task = new Task(() =>
{
floading.ShowDialog();
});

task.Start();

frm.vmsMGT.fCheckIn fCheckIn = new frm.vmsMGT.fCheckIn();
this.createTab(fCheckIn);
floading.Close();
...全文

相关推荐

评论 13
收藏 已收藏
分享
返回顶部
wanbolantian
C# 111,129 成员 642,540 内容