我在Windows Phone 8项目中,在这个项目中,我使用全景模板。在第一个全景图中,我在长列表选择器中显示新闻。
首先,我显示了15条新闻,没有什么是性能问题。但是现在我展示了50条新闻并开始让我的思考加载时间更长。
我的问题是,longlistselector为我们做了延迟加载,或者我们应该像windows存储一样为它做些什么。或者我的意思是,当我滚动底部时,它会获得小图片和标题?
我已经达到了ItemRealized和UnRealized事件。我应该专注于它们吗?
顺便说一句,我没有正确使用MVVM。我从web api获取数据并将其绑定到控件。
答案 0 :(得分:1)
您可以使用OnItemRealized事件实现延迟加载,请查看http://www.damirscorner.com/InfiniteScrollingWithIncrementalLoadingInWindowsPhone8.aspx
private void OnItemRealized(object sender, ItemRealizationEventArgs e)
{
var longListSelector = sender as LongListSelector;
if (longListSelector == null)
{
return;
}
var item = e.Container.Content;
var items = longListSelector.ItemsSource;
var index = items.IndexOf(item);
if (items.Count - index <= 1)
{
//ask for more items and add theme here
}
}