我已经实现了增量加载,捕获gridview中的scrollviewer,然后绑定其ViewChanged事件,如下面的代码所示。我应该实现什么逻辑,当滚动到达页面的末尾然后只有它应该调用webservice?目前我正在采取以下方式:
private ScrollViewer _scroll;
this._scroll = GetVisualChild<ScrollViewer>(grdVw1);
if (_scroll != null)
_scroll.ViewChanged += scroll_ViewChanged;
async void scrollSnap_ViewChanged(object sender, ScrollViewerViewChangedEventArgs e)
{
// Call the web service
if (_scrollSnap.ScrollableWidth - _scrollSnap.HorizontalOffset < 10)
{
// Webservice call
}
}
答案 0 :(得分:1)
一种方法是在数据收集对象中实现ISupportIncrementalLoading。如果您的收藏集实现了这一点,那么当用户滚动到页面末尾时,您的GridView
或ListView
会自动进行数据加载调用。
还有IObserveableVector,但我没有使用它。