如何向枢轴项目添加图像控件和列表控件

本文关键字:控件 图像 列表 添加 项目 | 更新日期: 2023-09-27 18:15:05

我是一个Windows Phone开发新手,决定从Windows Phone 8 pivot应用开始。这一页上有一个主元素,有两个主元素。在其中一个,我想添加一个图像控件和一个列表框控件就在图像下面,我应该使用网格或堆栈面板?有人知道怎么做吗?

如何向枢轴项目添加图像控件和列表控件

从头开始,非常简单。首先,在Grid(LayoutRoot Grid)中添加一个枢轴。

在PivotItem中,创建一个新的网格,因为你要把两个控件放入其中,只有一个内容可以被PivotItem初始化,所以创建一个MainGrid。

将MainGrid分成两行,正如您从代码中看到的那样。在第一行,放置图像控件。

在第二行,放置一个新的网格(ListboxGrid),在第一行设置新的网格,并在其中放置一个列表框。我建议你不要在这种情况下使用stackpanel,因为Grid根据列表框项扩展其高度,但stackpanel没有。因此,当你使用StackPanel时,你很难在ListBox项目中滚动。这里是代码

<Grid x:Name="LayoutRoot" Background="Transparent">
    <phone:Pivot >
        <phone:PivotItem Header="item1">
            <Grid x:Name="MainGrid">
                <Grid.RowDefinitions>
                    <RowDefinition Height="Auto"/>
                    <RowDefinition Height="*"/>
                </Grid.RowDefinitions>
                <Image Grid.Row="0" Height="300"/>
                <Grid Grid.Row="1" x:Name="ListboxGrid">
                    <ListBox>
                        <ListBoxItem >
                            <TextBlock Text="list1"/>
                        </ListBoxItem>
                        <ListBoxItem >
                            <TextBlock Text="list2"/>
                        </ListBoxItem>
                    </ListBox>
                </Grid>
            </Grid>
        </phone:PivotItem>
    </phone:Pivot>
</Grid>

我会同时使用Hubert。通过在Visual Studio中单击XAML文件来习惯使用XAML设计器。

在我看来,网格基本上是一个HTML表格,有一些不同。所以使用这个来精确对齐你的元素。

当每个子项目可见性设置为visibility =" collapse "时,堆栈面板将折叠项目。

<Grid x:Name="LayoutRoot" Background="Transparent">
        <!--Pivot Control-->
        <phone:Pivot Title="MY APPLICATION">
            <phone:PivotItem Header="first">
                <Grid>
                    <StackPanel>
                        <Image></Image>
                        <ListBox></ListBox>
                    </StackPanel>
                </Grid>
            </phone:PivotItem>
        </phone:Pivot>
</Grid>