2

誰かがWPFでVirtualizingStackPanelを適切に使用する方法を教えてもらえますか?ItemsControlのItemsPanelTemplateにVirtualizingStackPanelを設定し、それをItemsHostとして設定しましたが、ItemsコントロールのCleanUpVirtualizedItem添付イベントのリスナーを登録しても何も起こりません。イベントが呼び出されるのがわかりません。また、データテンプレートのカスタムコントロールのUnloadedイベントが呼び出されることもありません。これは、実際の仮想化が行われていないことを示しています。どんな助けでも大歓迎です。

4

1 に答える 1

5

代わりにListBoxまたはListViewを使用してみてください。

<ListBox ItemsSource="{Binding Items}"
    VirtualizingStackPanel.VirtualizationMode="Recycling" 
    VirtualizingStackPanel.CleanUpVirtualizedItem="ItemsControl_CleanUpVirtualizedItem">
</ListBox>

ListBoxは、アイテムの仮想化を自動的に処理します。VirtualizingStackPanelを直接作成する場合は、もう少し手動で行う必要があります。これは、ItemsControlのデフォルトのControlTemplateに仮想化の鍵となるScrollViewerがないためです。詳細はこちらをご覧ください。

于 2011-01-25T00:42:17.300 に答える