寻找元素方法
T FindSimpleVisualChild<T>(DependencyObject element) where T : class
{
while (element != null)
{
if (element is T)
return element as T;
element = VisualTreeHelper.GetChild(element, 0);
}
return null;
}
判断底部方法
private bool isBootomScrollView(System.Windows.Controls.ScrollViewer view)
{
bool isBottom = false;
double dVer = view.VerticalOffset;
double vViewport = view.ViewportHeight;
double eextent = view.ExtentHeight;
if (dVer != 0)
{
if (dVer + vViewport == eextent)
{
isBottom = true;
}
else
{
isBottom = false;
}
}
else
{
isBottom = false;
}
return isBottom;
}
监听滚动-下拉刷新
private void ScrollViewer_ScrollChanged(object sender, ScrollChangedEventArgs e)
{
var scrollViewer = FindSimpleVisualChild<System.Windows.Controls.ScrollViewer>(ListBox2);//ListBox2是控件name
if (isBootomScrollView(scrollViewer))
{
//todo 下拉刷新方法
}
}