私はグリッドビューを持っています。しかし、大量のデータをダンプしているので、オーバーロード例外が発生します。
幅と高さを設定することで通常のgridviewでこれを解決することができ、それはデータを仮想化します。
ここでの違いは、アイテムパネルも設定したことです。これはvirutalizationが始まるのを防いでいます。
VariableSizedWrapGridで幅を設定することで再び機能させることができますが、これはスクロールバーを表示していないため、まったく使い物になりません。
<GridView x:Name="ItemGridView" Width="500" Height="400" ItemsSource="{Binding ItemList}" Margin="6" Grid.Row="1">
<GridView.ItemsPanel>
<ItemsPanelTemplate>
<VariableSizedWrapGrid Width="450" Height="350" />
</ItemsPanelTemplate>
</GridView.ItemsPanel>
どのように私はこの組み合わせを機能させることができますか?
回答:
回答№1は0GridViewをScrollViewer要素に配置することもできます。
<ScrollViewer>
<Grid>
<GridView x:Name="ItemGridView" Width="500" Height="400" ItemsSource="{Binding ItemList}" Margin="6" Grid.Row="1">
<GridView.ItemsPanel>
<ItemsPanelTemplate>
<VariableSizedWrapGrid Width="450" Height="350" />
</ItemsPanelTemplate>
</GridView.ItemsPanel>
</GridView >
</Grid>
</ScrollViewer>