【发布时间】:2015-01-26 06:55:57
【问题描述】:
我有一个 Windows Phone 8.1 XAML 应用程序,其中包含 ListView 和 WrapGrid 作为其 ItemsPanel 以在两列中显示项目
<ListView x:Name="ListV" ItemClick="ListV_ItemClick" IsItemClickEnabled="True">
<ListView.ItemsPanel>
<ItemsPanelTemplate>
<WrapGrid Orientation="Horizontal" ItemWidth="160" ItemHeight="280" MaximumRowsOrColumns="2" />
</ItemsPanelTemplate>
</ListView.ItemsPanel>
<ListView.ItemTemplate>
<DataTemplate>
<Grid Background="Red" Margin="12" Width="100" Height="100"></Grid>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
页面的缓存模式设置为NavigationCacheMode.Required。
我在列表中滑动,点击一个项目并导航到另一个屏幕。当我导航回到带有ListView 的页面时,ListView 会记住 scoll 位置 (NavigationCacheMode.Required) 但会“损坏”,当我点击项目时,它们会奇怪地跳跃。
这是重现问题的完整简单解决方案:https://dl.dropboxusercontent.com/u/73642/listview.zip。
这是一个显示问题的视频:https://dl.dropboxusercontent.com/u/73642/listview.wmv
其他人经历过这种情况吗?有没有办法解决这个问题?
【问题讨论】:
标签: c# xaml windows-phone-8 windows-phone-8.1