5 c#
我有我的主 GUI,从那里我在一个单独的线程中开始一个长时间运行的方法。现在从这个单独的线程中,我需要创建并显示一个新表单。但是当我显示这个新表单时,所有控件都被卡住了,窗口显示“无响应”。
哪个是解决这个问题的最佳方法?
问候
托马斯
将创建新 GUI 的代码放入主 GUI 类中,然后调用主 GUI 的 Invoke 方法,或者引发主 GUI 可以订阅的事件以了解何时触发新 GUI。如果选择后者,请务必使用 InvokeRequired 来确定是否可以直接调用创建新 GUI 的方法,或者是否需要使用 Invoke 返回 GUI 线程来创建新 GUI。