0

我需要为我的 WP7 应用程序设置两个行列表框项目,其中一行是标题,然后是一个较小的副标题,其中包含一些细节。我怎样才能在 WP7 中做到这一点?

我正在使用 VS2010 和表达式混合来制作我的应用程序,目前我有一个用于单个列表框项目(文本)的自定义样式和项目模板。

到目前为止,这是我的代码

<phone:PhoneApplicationPage.Resources>
        <ItemsPanelTemplate x:Key="ItemsPanelTemplate1">
            <StackPanel Margin="0,20" HorizontalAlignment="Center">
                <StackPanel.Resources>
                    <Style TargetType="ListBoxItem">
                        <Setter Property="HorizontalContentAlignment" Value="Center"/>
                    </Style>
                </StackPanel.Resources>
            </StackPanel>
        </ItemsPanelTemplate>
        <Style x:Key="ListBoxStyle1" TargetType="ListBox">
            <Setter Property="Background" Value="Transparent"/>
            <Setter Property="Foreground" Value="{StaticResource PhoneForegroundBrush}"/>
            <Setter Property="ScrollViewer.HorizontalScrollBarVisibility" Value="Disabled"/>
            <Setter Property="ScrollViewer.VerticalScrollBarVisibility" Value="Auto"/>
            <Setter Property="BorderThickness" Value="0"/>
            <Setter Property="BorderBrush" Value="Transparent"/>
            <Setter Property="Padding" Value="0"/>
            <Setter Property="HorizontalAlignment" Value="Center"/>
            <Setter Property="Template">
                <Setter.Value>
                    <ControlTemplate TargetType="ListBox">
                        <ScrollViewer x:Name="ScrollViewer" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" Background="{TemplateBinding Background}" Foreground="#FF82C12E" Padding="{TemplateBinding Padding}" HorizontalAlignment="Center" FontSize="48">
                            <ItemsPresenter HorizontalAlignment="Center"/>
                        </ScrollViewer>
                    </ControlTemplate>
                </Setter.Value>
            </Setter>
        </Style>
    </phone:PhoneApplicationPage.Resources>

谢谢你的帮助!

4

1 回答 1

2

你可以有一个 ItemTemplate:

  <DataTemplate x:Key="MyItemTemplate">
        <Grid>
            <Grid.RowDefinitions>
                <RowDefinition Height="Auto"/>
                <RowDefinition Height="Auto"/>
            </Grid.RowDefinitions>
            <TextBlock Grid.Row="0"/>
            <TextBlock Grid.Row="1"/>
        </Grid>
    </DataTemplate>

并在您的 ListBox 中绑定属性:

<ListBox ItemTemplate="{StaticResource MyItemTemplate}"/>
于 2013-04-27T18:31:30.577 回答