内存泄漏与WPF& ItemsControl(VB.NET)

时间:2010-05-04 21:47:29

标签: .net wpf vb.net memory-leaks itemscontrol

我有一个ItemsControl,它使用DataTemplate在我的customClass中显示实现INotifyPropertyChanged的属性......

非常直截了当......

DataTemplate中的一些项目使用CommandBindings(例如按钮),还有一些项目有一些代码隐藏(yuck)。

当我清空ItemsControl并设置customClass = Nothing的所有实例时,我的程序没有释放内存。这很快就成了问题!

知道我应该从哪里开始寻找?我甚至完全遍历每个DataTemplate实例的可视化树,并设置每个Visual = Nothing.我不是真的,如果它应该有任何影响。

1 个答案:

答案 0 :(得分:1)

不完全确定要查看的位置,但必须检查是否存在基础事件连接。

如果存在事件委托添加操作,请确保将其删除。

如果命令绑定看起来是个问题,请考虑在设置为空时找到清除命令绑定的方法。

此外,更激烈的是,开始寻求使用WeakReferences等,直到你能够至少找出造成泄漏的原因。

快乐狩猎!