4

我一直在尝试使用 Windows 8 和 Visual Studio 2012 express,但我无法实现我的目标。

我一直在尝试创建一个水平扩展的瓷砖网格(就像“开始”屏幕一样)。
这些项目是在运行时添加的,虽然水平滚动有效,但还不够好。
使用我的触摸板时,它似乎会夹在某些东西上,在平板电脑上这会感觉很迟钝。
用光标滚动似乎很好。

我想知道如何通过使用 XAML 给它一个流畅的体验,不幸的是我不太擅长它(还)。

XAML:(堆栈面板应该没有意义,但我正在试验)

<Grid Background="White" ScrollViewer.HorizontalScrollBarVisibility="Visible">
    <Grid.RowDefinitions>
        <RowDefinition Height="19*"/>
        <RowDefinition Height="109*"/>
    </Grid.RowDefinitions>
    <StackPanel x:Name="stackPanel1" HorizontalAlignment="Left" Height="622" Margin="97,93,0,0" VerticalAlignment="Top" Width="0" Orientation="Horizontal" Grid.RowSpan="2"/>
    <GridView x:Name="gridView1" ItemTemplate="{StaticResource Standard250x250ItemTemplate}" Margin="0,0,0,0" Background="Red" Grid.Row="1" ScrollViewer.HorizontalScrollBarVisibility="Hidden"/>
    <Image HorizontalAlignment="Left" Height="90" Margin="1206,11,0,0" VerticalAlignment="Top" Width="106" Source="Assets/SmallLogo.png"/>
</Grid>
4

1 回答 1

0

不是 100% 确定这是否是您面临的问题,但也许它有帮助:默认情况下ItemsTemplatePanel, GridView 的VirtualizingStackPanel. 如果您的 GridView 中没有很多项目,则 GridView 的滚动确实看起来很卡顿。

尝试将 设置ItemsPanelTemplate为 aStackPanel而不是VirtualizingStackPanel(除非您坚持让控件 GridView 虚拟化其项目)。

<GridView.ItemsPanel>
<ItemsPanelTemplate>
    <StackPanel Width="Auto" 
            HorizontalAlignment="Left" 
            Orientation="Horizontal" />
</ItemsPanelTemplate>
</GridView.ItemsPanel>

希望这可以帮助!

于 2012-12-21T07:34:42.090 回答