【问题标题】:Win8 GridView items are out of boundWin8 GridView 项目越界
【发布时间】:2014-03-17 21:17:36
【问题描述】:

当我在我的项目中放置一个带有 GridView 的语义缩放控件时,它会像屏幕截图一样掉出来。

我将我的数据项放入一个包装面板中,并期望它会包装它们。但由于某种原因,它没有。这里有什么问题?

这是我在 xaml 中定义的 gridview 的方式:

 <SemanticZoom.ZoomedInView>
                    <GridView ScrollViewer.IsHorizontalScrollChainingEnabled="False" 
                              ScrollViewer.IsVerticalScrollChainingEnabled="False"
                              ItemTemplate="{StaticResource PatientMediaFileBigItemTemplate}"
                              ItemsSource="{Binding Source={StaticResource patientMediaFiles} }" 
                              IsItemClickEnabled="True"
                              SelectionMode="None"
                              Margin="0,0,0,0" ItemClick="MediaFileIcon_Click"
                              >
                        <GridView.ItemsPanel>
                            <ItemsPanelTemplate>
                                <controls:WrapPanel Orientation="Vertical" FlowDirection="LeftToRight" Width="Auto"/>
                            </ItemsPanelTemplate>
                        </GridView.ItemsPanel>
                        <GridView.GroupStyle>
                            <GroupStyle>
                                <GroupStyle.HeaderTemplate>
                                    <DataTemplate>
                                        <TextBlock Text="{Binding GroupName}" FontSize="28" Foreground="Black"/>
                                    </DataTemplate>
                                </GroupStyle.HeaderTemplate>
                            </GroupStyle>
                        </GridView.GroupStyle>
                    </GridView>
                </SemanticZoom.ZoomedInView>

【问题讨论】:

  • 我认为这是因为您的WrapPanel 可能具有自动高度并且没有最大行数。不幸的是,您可能不得不自己进行这些计算。

标签: c# wpf winrt-xaml


【解决方案1】:

我认为这是因为您的包装面板需要根据您的要求在安排覆盖和测量覆盖方法中进行计算,并尝试设置子项视口及其偏移量。

【讨论】:

    【解决方案2】:

    我通过在组标题样式中添加组样式解决了这个问题

    <GroupStyle.Panel>
        <ItemsPanelTemplate>
            <VariableSizedWrapGrid Orientation="Vertical" Margin="0,0,10,0"/>
        </ItemsPanelTemplate>
    </GroupStyle.Panel>
    

    【讨论】:

      猜你喜欢
      • 2012-12-25
      • 2023-01-02
      • 2012-10-31
      • 1970-01-01
      • 1970-01-01
      • 2014-05-31
      • 1970-01-01
      • 1970-01-01
      • 2018-06-18
      相关资源
      最近更新 更多