我正在尝试在WPF中实现我自己的VirtualWrapPanel。
我这样实现:
public class VirtualWrapPanel : VirtualizingPanel, IScrollInfo
{
....
protected override void OnItemsChanged(object sender, ItemsChangedEventArgs args)
{
switch (args.Action)
{
case NotifyCollectionChangedAction.Remove:
case NotifyCollectionChangedAction.Replace:
case NotifyCollectionChangedAction.Move:
base.RemoveInternalChildRange(args.Position.Index, args.ItemUICount);
return;
}
}
}
但是从不调用OnItemsChanged方法,导致控件不释放对象...... 任何的想法 ? 谢谢 乔纳森
答案 0 :(得分:0)
您的ItemsSource是否实现了INotifyCollectionChanged?最简单的方法是使它成为ObservableCollection