【发布时间】:2013-01-24 08:28:46
【问题描述】:
我在 WPF 中创建了一个继承自 wpf 数据网格控件的自定义数据网格控件。
因此,当用户查询数据库时,会返回数百条记录,每条记录有 15 到 20 列。
我相信当我控制屏幕时,分配给该屏幕及其网格的所有内存都应该由 GC 回收。但事实并非如此。
我在 Red Gate 的 Memory Profiler 中测试我的应用程序,当我打开屏幕时它显示分配给它的 30 mb 内存。
但是当我关闭此屏幕时,应用程序仍以某种方式保留该内存,当我在 ants 内存分析器中查看原因时,它显示由于我的自定义数据网格,我的屏幕实例仍在内存中。
我已将卸载事件添加到我的用户控件并分离我在此过程中附加的所有事件处理程序。
我错过了什么,我该怎么办?
【问题讨论】:
标签: wpf datagrid memory-leaks idisposable red-gate-ants