【问题标题】:Windows 8 GridView groups widthWindows 8 GridView 组宽度
【发布时间】:2014-04-08 13:57:25
【问题描述】:

我的网格视图有问题。我在其中显示分组数据并使用VariableSizedWrapGrid 显示项目。问题是每个组都具有相同的宽度,等于最多的项目。即使一个组只包含 1 个项目,它的宽度也像那里的 20 个项目。如何使这些 ItemsPanel 具有可变宽度?

我的问题与here 描述的几乎相同,但是当我将VirtualizingStackPanel 用作GridView.ItemsPanel 时,我的VariableSizedWrapGrid 显示在一行中,我需要它显示在两行中。

<SemanticZoom.ZoomedInView>
                    <GridView ScrollViewer.IsHorizontalScrollChainingEnabled="False" 
                              ScrollViewer.IsVerticalScrollChainingEnabled="False"
                              ItemTemplate="{StaticResource PatientMediaFileBigItemTemplate}"
                              ItemsSource="{Binding Source={StaticResource PatientVisits} }" 
                              IsItemClickEnabled="True"
                              SelectionMode="None"
                              Margin="0,0,0,0" ItemClick="MediaFileIcon_Click"
                              >
                        <GridView.GroupStyle>
                            <GroupStyle>
                                <GroupStyle.HeaderTemplate>
                                    <DataTemplate>
                                        <Button Content="{Binding DateOfVisit, Converter={StaticResource StringFormatConverter},  ConverterParameter='{}{0:dd MMM yyyy}'}" FontSize="28" Foreground="Black" BorderThickness="0" Click="ButtonVisit_OnClick"/>
                                    </DataTemplate>
                                </GroupStyle.HeaderTemplate>
                                <GroupStyle.Panel>
                                    <ItemsPanelTemplate>
                                        <VariableSizedWrapGrid Orientation="Vertical" Margin="0,0,80,0" Width="Auto"  Background="BlueViolet"/>
                                    </ItemsPanelTemplate>
                                </GroupStyle.Panel>
                            </GroupStyle>
                        </GridView.GroupStyle>
                    </GridView>
                </SemanticZoom.ZoomedInView>

【问题讨论】:

    标签: c# wpf gridview windows-8 winrt-xaml


    【解决方案1】:

    您可能需要将GridViewItemsPanel 更改为StackPanel,但请注意,这将限制您可以放入GridView 的项目数量,因为它会禁用虚拟化。更好的选择可能是在组中继续显示有限数量的项目,但添加一个按钮(实际上,带有人字形字形的组标题按钮应该可以工作)导航到所选组的完整视图。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多