2011-01-25 15 views
3

私は、ControlTemplateでVirtualizingStackPanelを使用してItemsControlを使用しています。私はある程度、仮想化を動作させています。私はアイテムのための私のDataTemplateのコントロールのロードされた、アンロードされたイベントハンドラにデバッグステートメントを入れましたが、コントロールが見えなくなった直後にアンロードされません。この動作を強制する方法はありますか?VirtualizingStackPanelは、仮想化されたコントロールをアンロード(ディスポジション)するタイミングをどのように決定しますか?

+0

xamlを投稿できますか? – baalazamon

答えて

2

VirtualizationModeをリサイクルに設定していることがあります。あなたがここにVirtualizingStackPanelの完全なソースを見つけることができます

// 
    // Delayed Cleanup is used when the VirtualizationMode is standard (not recycling) and the panel is scrolling and item-based 
    // It chooses to defer virtualizing items until there are enough available. It then cleans them using a background priority dispatcher 
    // work item 
    // 

注::

をリサイクルモードはすぐに(代わりにバックグラウンドでそれを行うの)レンダラをクリーンアップ示すVirtualizingStackPanel.csのソースコード内のコメントがあります。

http://referencesource.microsoft.com/netframework.aspx

+0

ソースにリンクしてくれてありがとうございました。私はいつも、ウェブ上でスクラップを探していて、Microsoftからたくさんのものを得ることができないということを全く気にしていませんでした。 – dain

関連する問題