【发布时间】:2013-02-28 22:44:31
【问题描述】:
我的应用程序使用TabControl 来显示数据,每次用户请求数据时,应用程序都会创建一个新的TabPage,其中包含许多控件(PictureBox 控件、Label 控件等)。用户在某些时候会关闭他已完成使用的TabPage 控件。现在这里的问题是关闭的TabPage 控件,它们会堆积在内存中,导致程序使用很大一部分内存。从TabControl 中删除TabPage 控件不会释放它,也不会释放其中的项目,它只是隐藏它,但控件仍然挂在内存中。
我用来删除TabPage 的代码类似于:
tabControl.TabPages.Remove(myTabPage);
myTabPage.Dispose();
问:如何完全摆脱 TabPage 控件?
【问题讨论】:
-
CL4PTR4P - 这不是他尝试了什么的问题。很明显,他尝试了一些东西。我要问的问题是查看他编写的源代码,看看他目前的处理方式当前选项卡
-
@DJKRAZE - 从我读到的内容来看,我认为他根本没有处理它们。
-
@DJKRAZE:是的,他尝试过“某事”,但那是什么?但你说得有道理,这里的代码也会有所帮助。
-
Brian 正是我建议显示代码的原因。这里有太多的 OP 想要快速的答案,我可以根据
HaLaBi的问题来判断,他已经展示/付出了一些个人努力他提出的问题表明......现在如果我们能看到一些代码,那么我们将能够提供可行的解决方案 -
@DJKRAZE 我已经包含了一些代码。这就是我通常处理它们的方式。
标签: c# .net memory-leaks user-controls tabcontrol