C# Win Forms GUI设计:在不达到用户对象限制的情况下显示大量GUI组件?

C# Win Forms GUI设计:在不达到用户对象限制的情况下显示大量GUI组件?,c#,.net,winforms,user-interface,C#,.net,Winforms,User Interface,我有这个问题:在我的应用程序中,我需要为运行时从数据库提供的列表的每个元素显示自定义用户控件。创建时,每个用户控件包含大约30个用户对象(按钮、网格、标签、组合框等),因此,当列表包含300多个元素时,将达到允许的用户对象的限制 没有内存泄漏,句柄很好,GDI对象也很好。所有控件都添加到TableLayout中 有没有人遇到过类似的问题,您是如何解决的? 除了根据表格布局的滚动位置,通过控制每个控件在屏幕上是否可见来动态分页或绘制控件之外,还有其他方法吗 感谢高级版。winforms不支持大型G

我有这个问题:在我的应用程序中,我需要为运行时从数据库提供的列表的每个元素显示自定义用户控件。创建时,每个用户控件包含大约30个用户对象(按钮、网格、标签、组合框等),因此,当列表包含300多个元素时,将达到允许的用户对象的限制

没有内存泄漏,句柄很好,GDI对象也很好。所有控件都添加到TableLayout中

有没有人遇到过类似的问题,您是如何解决的? 除了根据表格布局的滚动位置,通过控制每个控件在屏幕上是否可见来动态分页或绘制控件之外,还有其他方法吗


感谢高级版。

winforms不支持大型GUI。您正在寻找WPF。@尽管如此,应用程序不应该包含这么多元素。我认为存在一些设计问题,但你可以用应用程序的屏幕截图来证明我错了。@Kilazur这不是“设计”的问题,也不是应用程序不应该有很多控件。问题在于winforms是一个完全无用的平台,不支持任何东西。OP说他正在做一个像UI一样的滚动列表,其中每个项目都是一个用户控件。与之类似,我最终提供了一个for,因为解决winforms无法使用的唯一方法是忘记winforms并使用本世纪的技术。谢谢HighCore。。。这也是我的想法,但不幸的是,在项目的这个阶段,不可能改变技术:(@Alex)您也可以在WPF中实现应用程序的这个特定部分,同时保持现有winforms内容不变。您可以使用