Win8 GridView项目超出范围

时间:2014-03-14 17:33:51

标签: c# wpf winrt-xaml

当我放置一个带有GridView的语义缩放控件时,我的项目就像截图一样掉了。

grid view

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

以下是我在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>

2 个答案:

答案 0 :(得分:0)

我认为这是因为您需要根据您在arrangeOverride和measureOverride方法中的要求进行计算,并尝试设置子项视口及其偏移量。

答案 1 :(得分:0)

我通过在组标题样式中添加组样式来解决问题

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