如何使用组创建垂直滚动列表视图

时间:2014-04-11 16:10:25

标签: xaml winrt-xaml

我需要创建一个垂直滚动列表视图,并启用分组,如下所示:

enter image description here

这就是我目前所拥有的:

<common:VariableSizeListViewWithSelection     ItemsSource="{Binding Source={StaticResource cvs}}"
                                              ScrollViewer.VerticalScrollBarVisibility="Auto" 
                                              IsItemClickEnabled="True"  
                                              ItemTemplateSelector="{StaticResource summaryViewTemplateSelector}" >


    <GroupStyle>
        <GroupStyle.HeaderTemplate>
            <DataTemplate>
                <Grid Margin="0,0,0,2">
                    <TextBlock Grid.Column="0" Text="{Binding Title}" Margin="0,-11,10,10" Style="{StaticResource SubheaderTextBlockStyle}" TextWrapping="NoWrap" FontWeight="SemiBold" Foreground="#333333" />
                </Grid>
            </DataTemplate>
        </GroupStyle.HeaderTemplate>
    </GroupStyle>

    <common:VariableSizeListViewWithSelection.GroupStyle>
        <GroupStyle HidesIfEmpty="True">

            <GroupStyle.HeaderTemplate>
                <DataTemplate>
                    <Grid Background="LightGray" Margin="0">
                        <TextBlock Text='{Binding Title}' Foreground="Black" Margin="5" Style="{StaticResource HeaderTextBlockStyle}"/>
                    </Grid>
                </DataTemplate>
            </GroupStyle.HeaderTemplate>

            <GroupStyle.Panel>
                <ItemsPanelTemplate>
                    <WrapGrid Orientation="Horizontal" MaximumRowsOrColumns="4" Width="300" />
                </ItemsPanelTemplate>
            </GroupStyle.Panel>

        </GroupStyle>
    </common:VariableSizeListViewWithSelection.GroupStyle>

</common:VariableSizeListViewWithSelection>

但是这没有按预期工作,它创建了一个包含正确分组的列表视图,但只有一列如下: enter image description here

你能否指出我做错了什么?

1 个答案:

答案 0 :(得分:0)

我们将其脱机了一段时间似乎将ItemsPanel的{​​{1}}更改为ListView使其正常工作。我有一种感觉,默认StackPanel应该仍然支持分组,但可能不支持自定义组布局面板。也许有一种方法可以重新配置ItemsStackPanel以垂直滚动,这也可以。