【问题标题】:Get VariableSizedWrapGrid to virtualise获取 VariableSizedWrapGrid 进行虚拟化
【发布时间】:2012-10-10 11:38:19
【问题描述】:

我有一个网格视图。但是由于我将大量数据转储到其中,因此会引发重载异常。

我可以通过设置宽度和高度在普通的gridview上解决这个问题,然后它将虚拟化数据。

这里的区别是我还设置了项目面板。这会阻止虚拟化启动。

我可以通过在 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>

有什么想法可以让这种组合发挥作用吗?

【问题讨论】:

    标签: c# windows-8 microsoft-metro windows-runtime winrt-xaml


    【解决方案1】:

    也许您可以将 GridView 放在 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>
    

    【讨论】:

    • 由于gridview的高度/宽度固定,scrollviewer不会显示。
    • 如何设置 GridView 的宽度和高度为自动?
    猜你喜欢
    • 1970-01-01
    • 2017-08-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-12-07
    • 1970-01-01
    • 2020-09-08
    • 2021-09-09
    相关资源
    最近更新 更多