【问题标题】:Windows 8 GridView maximum items (according to screen size)Windows 8 GridView 最大项目(根据屏幕大小)
【发布时间】:2015-01-02 22:39:44
【问题描述】:

我正在为 Windows 8(不是 8.1)创建应用程序。

我想以类似于 Windows 应用商店应用的方式在屏幕上显示一些内容。

我目前使用的是 GridView,但如果需要,也可以使用其他控件。

我的要求如下-

在一个小屏幕上,Windows 商店仅显示一个类别中的 6 个项目,如下所示-

而在更大的屏幕上显示如下 9 个项目-

我想添加一个类似的实现,但我不知道怎么做。

屏幕小时是否只需要设置 6 个项目作为 GridView 的源,而屏幕大时需要设置 9 个项目?或者 GridView 是否可以自动显示 3 列和“n”行中可见的尽可能多的项目?

这是我的 GridView 的示例代码 - 我正在使用 WrapGrid 将列数限制为 3

<Grid Name="MyGrid">
    <GridView Name="MyGridView">
        <GridView.ItemsPanel>
            <ItemsPanelTemplate>
                <WrapGrid Orientation="Horizontal" MaximumRowsOrColumns="3" />
            </ItemsPanelTemplate>
        </GridView.ItemsPanel>
    <GridView.ItemTemplate>
        <DataTemplate>
            <Grid>
                <Image Source="{Binding Icon}" Margin="10" Stretch="Uniform" Width="150" Height="150" />
            </Grid>
        </DataTemplate>
    </GridView.ItemTemplate>
</GridView>

【问题讨论】:

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


    【解决方案1】:

    也许您可以进行附加行为并将其附加到 ItemsWrapGrid。该行为将侦听 SizeChanged 并根据项目的可用空间和大小自动更改 MaximumRowsOrColumns 属性

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-01-19
      • 2018-04-24
      • 1970-01-01
      • 2020-09-29
      • 2017-12-02
      • 1970-01-01
      相关资源
      最近更新 更多