我需要获取List视图的滚动查看器以在列表视图中实现延迟加载。为此,我引用了这个 http://windowsapptutorials.com/windows-phone-8-1/listview/lazy-loading-listview/ 我用来检索scrollviewer的函数是
public static ScrollViewer GetScrollViewer(DependencyObject depObj)
{
if (depObj is ScrollViewer) return depObj as ScrollViewer;
for (int i = 0; i < VisualTreeHelper.GetChildrenCount(depObj); i++)
{
var child = VisualTreeHelper.GetChild(depObj, i);
var result = GetScrollViewer(child);
if (result != null) return result;
}
return null;
}
问题是VisualTreeHelper.GetChildrenCount始终为0并且该函数返回null。如何获得Listview的滚动查看器?
答案 0 :(得分:0)
WinRT xaml工具包为VisualTreeHelper提供了一个扩展,它添加了一个GetFirstDecendantOfType。只需使用它。