ItemsControl
仮想化したいデータのリストが含まれていますが、では機能VirtualizingStackPanel.IsVirtualizing="True"
しないようですItemsControl
。
これは本当にそうですか、それとも私が気付いていない別の方法がありますか?
テストするために、次のコードブロックを使用しています。
<ItemsControl ItemsSource="{Binding Path=AccountViews.Tables[0]}"
VirtualizingStackPanel.IsVirtualizing="True">
<ItemsControl.ItemTemplate>
<DataTemplate>
<TextBlock Initialized="TextBlock_Initialized"
Margin="5,50,5,50" Text="{Binding Path=Name}" />
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
をに変更するItemsControl
とListBox
、イベントが数回しか実行されないことがわかりますInitialized
(マージンが大きいため、いくつかのレコードを通過するだけで済みます)が、ItemsControl
すべてのアイテムが初期化されます。
をに設定してみItemsControlPanelTemplate
ましたVirtualizingStackPanel
が、役に立たないようです。