ControlTemplate で VirtualizingStackPanel を使用して ItemsControl を操作しています。仮想化はある程度機能しています。項目の DataTemplate のコントロールの Loaded および Unloaded イベント ハンドラーにデバッグ ステートメントを配置しましたが、コントロールが表示されなくなった直後にアンロードされません。この動作を強制する方法はありますか?
1123 次
1 に答える
2
VirtualizationModeをRecycledに設定すると運が良かったかもしれません。VirtualizingStackPanel.csのソースコードには、リサイクルモードが(バックグラウンドで実行するのではなく)レンダラーをすぐにクリーンアップすることを示すコメントがあります。
//
// 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の完全なソースは、次の場所にあります。
于 2011-01-26T02:30:01.037 に答える