none
Win10 UWP中,页面导航、不缓存数据,当返回列表页面时,如何还原列表的滚动位置? RRS feed

答案

  • 您好,

    UWP中,每个page都有一个可重写的OnNavigatedFrom和OnNavigatedTo方法。

    OnNavigatedFrom可以在离开这个页面的时候被触发,因此你可以在这个方法里保存你的数据,根据你的问题,你可以在这个方法里存储列表当前所在位置的某一项。

    OnNavigatedTo是在页面加载时触发,结合你的问题,你可以在这个方法里获取你之前保存的数据,然后再定位到列表中所在的位置。

    你可以参考我的代码:

    protected override void OnNavigatedTo(NavigationEventArgs e)
            {
                base.OnNavigatedTo(e);
                var localsetting = ApplicationData.Current.LocalSettings;
                var selectdItem = localsetting.Values["item"];
                mylistview.ScrollIntoView(selectdItem);
            }
    
            protected override void OnNavigatedFrom(NavigationEventArgs e)
            {
                base.OnNavigatedFrom(e);
                var localsetting = ApplicationData.Current.LocalSettings;
                var selectdItem = mylistview.SelectedItem;
                localsetting.Values["item"] = selectdItem;
            }


    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click HERE to participate the survey.

    2016年1月19日 2:46
    版主