如何在Windows 8应用程序中显示带有可点击图块的网格?

时间:2012-08-24 02:55:21

标签: windows-8 microsoft-metro windows-runtime

我想显示一个基于图块的网格,每个图块都可以在windows metro 8 app中点击。这个网格应该位于屏幕的中心,距离4边相等。

2 个答案:

答案 0 :(得分:2)

您应该使用GridView

与Jeff提到的一样,XAML和HTML5的标记会有所不同。您可以在此处找到有关GridView的更多信息:

Metro App - GridView and ListView (XAML)

从链接中,您可以切换到它的HTML等效项,以防您使用该平台。

答案 1 :(得分:1)

下面的HTML和XAML示例

CSS

.outergrid{
display: -ms-grid;
-ms-grid-rows: 1fr 1fr 1fr;
-ms-grid-columns: 1fr 1fr 1fr;
width: 100%;
height: 100%;}

.innergrid{
display: -ms-grid;
-ms-grid-rows: 1fr 1fr 1fr;
-ms-grid-columns: 1fr 1fr 1fr;
-ms-grid-column: 2;
-ms-grid-row: 2;
width: 100%;
height: 100%;}

<div class='outergrid'><div class='innergrid'/></div>

XAML

    <Grid Background="{StaticResource ApplicationPageBackgroundThemeBrush}">
    <Grid.RowDefinitions>
        <RowDefinition Height="1*"/>
        <RowDefinition Height="1*"/>
        <RowDefinition Height="1*"/>
    </Grid.RowDefinitions>
    <Grid.ColumnDefinitions>
        <ColumnDefinition Width="1*"/>
        <ColumnDefinition Width="1*"/>
        <ColumnDefinition Width="1*"/>
    </Grid.ColumnDefinitions>
    <Grid Grid.Column="1" Grid.Row="1">
        <Grid.RowDefinitions>
            <RowDefinition Height="1*"/>
            <RowDefinition Height="1*"/>
            <RowDefinition Height="1*"/>
        </Grid.RowDefinitions>
        <Grid.ColumnDefinitions>
            <ColumnDefinition Width="1*"/>
            <ColumnDefinition Width="1*"/>
            <ColumnDefinition Width="1*"/>
        </Grid.ColumnDefinitions>
    </Grid>
</Grid>