首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >配置TabPage控件及其控件

配置TabPage控件及其控件
EN

Stack Overflow用户
提问于 2013-02-28 22:44:31
回答 2查看 2.8K关注 0票数 0

我的应用程序使用TabControl来显示数据,每当用户请求数据时,应用程序将创建一个新的TabPage,其中包含许多控件(PictureBox控件、Label控件、.etc)。用户在某个时候将关闭他正在处理的TabPage控件。现在的问题是关闭的TabPage控件,它们会堆积在内存中,导致程序使用内存的很大一部分。从TabPage中删除TabControl控件并不会释放它,也不会在其中释放项目,它只是隐藏它,但是控件仍然挂在内存中。

我用于删除TabPage的代码如下所示:

代码语言:javascript
复制
tabControl.TabPages.Remove(myTabPage);
myTabPage.Dispose();   

问:我怎样才能完全摆脱TabPage 控件?

EN

回答 2

Stack Overflow用户

发布于 2013-02-28 23:22:19

您可以每次迭代与其关联的tabpage控件,并在循环中将它们释放。

代码语言:javascript
复制
            tabControl1.TabPages[0].Controls[i].Dispose();
票数 0
EN

Stack Overflow用户

发布于 2013-02-28 23:41:49

调用myTabPage.Dispose()应该释放TabPage及其子程序的资源。但是,这些对象使用的内存不一定会立即由GC释放,即使其他对象没有引用这些对象。

在内存很大的计算机中,GC往往很懒。只要内存稍后会释放,比如说几分钟后,你就不用担心了。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15147116

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档