C# WP8列表框在加载更多元素时出现跳跃
我一直在我的应用程序中实现无限滚动,但是当C# WP8列表框在加载更多元素时出现跳跃,c#,windows-phone-8,listbox,C#,Windows Phone 8,Listbox,我一直在我的应用程序中实现无限滚动,但是当列表加载更多元素时,滚动视图滚动位置与以前不同 自动滚动(工作正常): 如何在更改绑定时使列表框保持在相同的位置?我尝试获取垂直偏移量,并在加载时设置它,但它不起作用 我希望你能帮助我。谢谢。为什么不为WP8使用新的LongListSelector?这一个非常适合无限滚动。也有一些示例如何使用此功能,如: 不幸的是,twitter API已经更改,您将不会收到任何数据,但示例代码仍然帮助我找到了如何实现它的方法。作为参考,现在我使用的是Observabl
列表
加载更多元素时,滚动视图
滚动位置与以前不同
自动滚动(工作正常):
如何在更改绑定时使列表框保持在相同的位置?我尝试获取垂直偏移量,并在加载时设置它,但它不起作用
我希望你能帮助我。谢谢。为什么不为WP8使用新的LongListSelector?这一个非常适合无限滚动。也有一些示例如何使用此功能,如:
不幸的是,twitter API已经更改,您将不会收到任何数据,但示例代码仍然帮助我找到了如何实现它的方法。作为参考,现在我使用的是ObservableCollection,因此我删除了行“VideosList.ItemsSource=null;”谢谢,现在我使用的是LongListSelector,它可以工作了!我不想使用推特数据。为了将来参考,使用列表框实现无限滚动是个坏主意,VerticalOffset每次都会更改为意外值,我不知道为什么。
private void VideosList_ItemRealized(object sender, System.Windows.Input.ManipulationDeltaEventArgs e)
{
ScrollViewer sv = VideosList.Descendents().OfType<ScrollViewer>().FirstOrDefault();
if (sv != null && this.isloading == false && sv.VerticalOffset >= (sv.ScrollableHeight - 60))
{
this.isloading = true;
videosList.getMoreVideos(20);
}
//videosList.getMoreVideos(5);
}
public void videosListUpdateFinished(object sender, EventArgs e)
{
YTVideoPage.Focus();
VideosList.ItemsSource = null;
VideosList.ItemsSource = videosList.ytvideos.data.items;
this.isloading = false;
}