0

独自の VirtualWrapPanel を WPF に実装しようとしています。

私はこのように実装します:

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 メソッドが呼び出されることはなく、コントロールがオブジェクトを解放しません... 何か考えはありますか? ありがとうジョナサン

4

1 に答える 1

0

あなたの ItemsSource は INotifyCollectionChanged を実装していますか? それを行う最も簡単な方法は、それを ObservableCollection にすることです

于 2009-01-09T17:57:07.853 に答える