【问题标题】:Winform Application UI Freeze while switching between other opened applicationWinform 应用程序 UI 在其他打开的应用程序之间切换时冻结
【发布时间】:2019-03-14 08:46:20
【问题描述】:

我使用 C# 和 .Net Framework 4.5 开发了 Windows 应用程序

我的应用程序加载用户控件并从用户那里获取输入。该用户控件上可能有 100 多个控件。当我积极使用我的系统时,它工作正常。

问题是当我保持我的应用程序打开并切换到其他也在运行的应用程序时,例如检查我的电子邮件、浏览互联网或使用 Excel。回到我的程序后,我可以看到我的程序框架和几个控件,但不是全部,我可以通过我的程序看到我访问的最后一个应用程序。我的应用程序的标题栏也会变黑。

请注意,我的应用不会变得无法访问。它只是不会加载我的所有控件。我已经分配了快捷键来重新加载用户控件,通过它我可以重新加载我的用户控件,然后它就可以正常工作了。

【问题讨论】:

    标签: c# .net winforms user-interface


    【解决方案1】:

    我相信您的自定义控件需要一些特殊的绘图,这让我想到了绘画事件。

    既然你自己找到了解决办法

    我已经分配了快捷键来重新加载用户控件

    相信你可以通过OnFocus事件调用这个快捷键或者后面的代码。

    【讨论】:

    • 感谢安德鲁的回复。我不能在每次用户切换时都继续重新加载我的用户控件,因为他们可能已经感觉到了一些数据。但是,我已经设置了 3 分钟的计时器,如果用户在 3 分钟后重新访问我的应用程序,我会重新加载用户控件。但是时不时地重新加载并不是个好主意。
    • @Fredd 确实,刷新表单不是最好的主意,但除非您添加更多代码和有关您的应用程序的详细描述,否则我真的怀疑有人能理解为什么控件无法正确显示。比如什么类型的控件显示不好之类的
    猜你喜欢
    • 2014-12-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-01-28
    • 2014-04-22
    • 2016-05-17
    • 2022-10-05
    • 2016-06-20
    相关资源
    最近更新 更多