繁体   English   中英

将控件添加到后台工作器中的GUI

[英]Add controls to GUI in background worker

我有一个带有顶部和底部面板的表格。
用户将在顶部面板中进行选择,并且每次他们在一个键字段上更改值时,我都会破坏底部面板中的控件,然后对另一个应用程序进行耗时的调用(通过COM)并添加列表添加了新控件。 此刷新过程需要几秒钟。

我希望能够在刷新时禁用底部面板,并允许用户继续在顶部面板中工作。 当然,这就是在一个线程上运行的所有GUI。

图说:

在此处输入图片说明

我玩过BackgroundWorker,但当然不能直接在主线程的GUI上创建控件。

我可以这样做吗,即允许用户界面的一部分被禁用并在后台重建,而用户继续在另一部分上工作?

我可以这样做吗,即允许用户界面的一部分被禁用并在后台重建,而用户继续在另一部分上工作?

一般来说,没有。 GUI元素/控件必须全部在UI线程上创建和使用,且无其他地方。

创建此类情况的最佳方法通常是使用BackgroundWorker或其他技术在后台线程上获取所需的数据 ,然后在数据完全加载后构建UI。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM