Windows runtime GridView滚动到位置

Windows runtime GridView滚动到位置,windows-runtime,windows-8.1,Windows Runtime,Windows 8.1,在我的项目中,当用户在页面之间导航时,我希望保留滚动位置。目前我想更改GridView中元素的位置。我提出了以下测试代码: void OnLoaded(object sender, RoutedEventArgs e) { ScrollViewer scrollViewer = VisualTreeExtensions.GetVisualChild<ScrollViewer>(gridView); scrollViewer.ChangeView(100, null, nu

在我的项目中,当用户在页面之间导航时,我希望保留滚动位置。目前我想更改GridView中元素的位置。我提出了以下测试代码:

void OnLoaded(object sender, RoutedEventArgs e)
{
   ScrollViewer scrollViewer = VisualTreeExtensions.GetVisualChild<ScrollViewer>(gridView);
   scrollViewer.ChangeView(100, null, null);        
}
void已加载(对象发送方,路由目标)
{
ScrollViewer ScrollViewer=VisualTreeExtensions.GetVisualChild(gridView);
scrollViewer.ChangeView(100,null,null);
}
但是,当ScrollViewer位于GridView中时,此代码不起作用

有什么想法吗

附言。
我不想使用ScrollIntoView方法,因为我想完全恢复滚动位置。

您是否尝试过使用NavigationCacheMode=“Enabled”? 如果无法使用导航缓存模式,请尝试将yourScrollViewer.ChangeView(100,null,null)移动到yourScrollViewer.OnLoaded