Jim*_*röm 4 silverlight listbox windows-phone-7
当我到达列表框的开头或结尾时,我希望能够将更多数据加载到列表框中.
当我到达顶部并下拉时,我的列表框显示与时间相关的项目我希望看到一些文本,例如"向下滚动以查找更多项目",如果这样做,则会触发先前发生的项目的数据下载.
对于底部项目同样的事情,如果你足够远(在最后一项下面它触发的数据下载项目晚于列出的项目).
我不是在一个无缝的列表框之后,我希望只有当我滚动upp或向下滚动并释放时才会触发数据下载.我希望这种描述有意义.
基本上我需要知道的是列表框中的确切滚动位置,以便我可以确定何时拖动和释放列表很远或向上.对于那些拥有iPhone的人,我所使用的效果会在Facebook应用中使用.
干杯
/麦
Dam*_*ian 13
要获得精确的滚动位置,您需要获得ListBox的ScrollViewer.我将它用于Pivots(在逻辑删除后返回前一个滚动位置) - 我认为它也适用于ListBoxes ..
var scrollViewer = FindScrollViewer(listBox);
var offset = scrollViewer.VerticalOffset;
static ScrollViewer FindScrollViewer(DependencyObject parent)
{
var childCount = VisualTreeHelper.GetChildrenCount(parent);
for (var i = 0; i < childCount; i++)
{
var elt = VisualTreeHelper.GetChild(parent, i);
if (elt is ScrollViewer) return (ScrollViewer)elt;
var result = FindScrollViewer(elt);
if (result != null) return result;
}
return null;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5662 次 |
| 最近记录: |