我正在开发一个感觉缓慢的 WinForms 项目。它由数以百计的用户控件组成。如果有一个 UI 功能(即使没有在应用程序的其他任何地方使用),它也会封装在用户控件中。我已经使用 ANTS 分析器多次完成了该项目,并且大部分繁重的代码似乎都在各种控件构造函数中。
在我开始删除用户控件之前,它们是否代表了 WinForms 应用程序的大量开销,而不是仅仅布局没有用户控件的表单(例如,只是内部控件)?
最佳答案
我一直在用户控制 hell ,这并不好玩。我注意到的一些事情:
也就是说,用户控件绝对方便且值得适度使用。我试图避免的主要事情是嵌套过深。我发现 WPF 在这方面要好得多。它可以完全控制渲染管道,因此您不会遇到与控件深度组合相关的重绘问题。
关于c# - 用户控件中有很多开销吗?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3472850/