WPF C#DataBinding列表终结

时间:2013-03-20 15:37:12

标签: c# wpf data-binding listbox

我已经实现了一个用户控件,其中包含一个绑定到List的ListBox:

listBox1.ItemsSource = list;

我已经实现了一个删除(仅)对列表的引用的方法:

listBox1.ItemsSource = null;

调用此方法后,我强制进行垃圾收集:

GC.Collect();

我的列表类的析构函数未被调用。显然有一些隐藏的参考列表。

对此行为的任何解释都将不胜感激。

2 个答案:

答案 0 :(得分:1)

list 不为空,所以它仍然存在。

list = null;

答案 1 :(得分:1)

解决方案是从ObservableCollection(或实现INotifyCollectionChanged的东西)而不是List中派生列表类。