2011-01-11 8 views
0

私はこのひどい問題を抱えています。私はツリービューを持っており、検索オプションをサポートするためにItems.Filterを使用しています。TreeView.Items.Filter Memory Leak、HELP!

My TreeViewもアイテムのトーンを含む仮想化されており、仮想化されていない場合はUIの読み込みに1分かかります。

私の問題は、私がフィルタを設定すると、メモリ使用量が20M増加するようです。

ListBoxのは、それがすでに持っているアイテムを使用することはありませんし、なぜそれが(私は子アイテムのコンストラクタへの呼び出しを参照してください)新しいアイテムを作成する必要がある理由を私は理解していない
    1. なぜ地獄はしません古いUI要素をメモリから解放しますか?

    お願いします! ギリ

  • 答えて

    0

    古いUI要素がリリースされていませんか? GC.Collect()を呼び出してみてください。あなたが20Mを失っているかどうかを確認してください。これは良いことではありませんが、UI要素がリリースされたかどうかを確認します。

    フィルタを設定するたびに、または初めてフィルタを設定するたびに20Mも増えますか?

    +0

    はい、それは毎回20M増えて、私は既にGC.Collectを試しました... – Gilad