我正在开发一个Windows phone7 (WP7)应用程序,并且我正在使用LongListSelector控件来显示列表。当用户点击其中一项时,我的事件处理程序将导航到所选项的新页面。但是,当用户单击“后退”按钮返回到前一页时,LongListSelector的位置与以前不同。有谁知道如何记住选择器的位置,并在它返回时恢复该位置?
发布于 2011-05-05 05:02:28
在处理SelectionChanged事件时,可以将SelectedItem (我假设您已经检索到它,以便确定新页面)保存到页面属性。然后,在页面的OnNavigatedTo事件中,如果该项不为空,则可以使用ScrollTo方法。如下所示(其中lls是您的长列表选择器):
private object previousItem = null;
private void lls_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
object previousItem = lls.SelectedItem;
//Page Navigation Magic
}
protected override void OnNavigatedTo(System.Windows.Navigation.NavigationEventArgs e)
{
base.OnNavigatedTo(e);
if (previousItem != null)
lls.ScrollTo(previousItem);
}https://stackoverflow.com/questions/5877767
复制相似问题