【问题标题】:Gridview scrolling stuttersGridview滚动口吃
【发布时间】:2012-11-29 13:50:26
【问题描述】:

我一直在尝试使用 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>

【问题讨论】:

  • 这可能是硬件/驱动器问题,而不是 Windows-8 问题。您是否在其他计算机上尝试过?
  • 卡顿现象仅出现在应用程序中,Windows 8 启动画面不存在此问题,其他商店应用中也不存在。
  • 你能多贴一点代码吗?一个好的开始可能是加载网格的代码。
  • 这是默认的,Visual Studio 生成的构造函数。 ` 公共密封部分类 MainPage : Page { public MainPage() { this.InitializeComponent(); } `
  • 正如 mydogisbox 所建议的,也许它是你的硬件。如果它让您感觉更好,我有一个运行拆分应用程序模板的应用程序(用于组的网格,用于详细信息视图的列表视图),它在我的 MS Surface (ARM) 设备上运行得很好。滚动 99% 的时间是平滑的 - 不平滑的 1% 的时间是在执行 CPU 密集型处理时。

标签: xaml gridview windows-8 visual-studio-2012


【解决方案1】:

虽然不是 100% 确定这是否是您面临的问题,但它可能会有所帮助: 默认情况下,GridView 的ItemsTemplatePanelVirtualizingStackPanel。如果您的 GridView 中没有很多项目,则 GridView 的滚动确实看起来很卡顿。

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

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

希望这会有所帮助!

【讨论】:

    猜你喜欢
    • 2012-08-06
    • 2011-09-27
    • 1970-01-01
    • 2021-11-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-09-18
    相关资源
    最近更新 更多