【问题标题】:Remembering Position of LongListSelector记住 LongListSelector 的位置
【发布时间】:2011-05-04 02:22:52
【问题描述】:

我正在开发一个 Windows Phone 7 (WP7) 应用程序,并且我正在使用 LongListSelector 控件作为列表。当用户点击其中一个项目时,我的事件处理程序导航到所选项目的新页面。但是,当用户单击后退按钮返回上一页时,LongListSelector 的位置与原来不同。有谁知道如何记住选择器的位置并在返回时恢复该位置?

【问题讨论】:

    标签: windows-phone-7 silverlight-toolkit


    【解决方案1】:

    当您处理SelectionChanged 事件时,您可以将SelectedItem(我假设您已经在检索它以确定新页面)保存到页面属性。然后在页面的OnNavigatedTo 事件中,如果该项目不为空,那么您可以使用ScrollTo 方法。像这样的东西(lls 是你的 longlistselector):

    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);
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-10-30
      • 1970-01-01
      • 2013-09-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-10-07
      相关资源
      最近更新 更多