![](/img/trans.png)
[英]How to autoscroll AvaloniaUI ScrollViewer when using DataBinding?
[英]WPF - How to autoscroll scrollviewer when it need to scroll?
您可以使用ScrollChangedEventArgs.ExtentHeightChange來了解ScrollChanged是由於內容更改還是用戶操作引起的...當內容不變時,ScrollBar位置將設置或取消設置自動滾動模式。 內容更改后,您可以應用自動滾動。
后面的代碼:
private Boolean AutoScroll = true;
private void ScrollViewer_ScrollChanged(Object sender, ScrollChangedEventArgs e)
{
// User scroll event : set or unset autoscroll mode
if (e.ExtentHeightChange == 0)
{ // Content unchanged : user scroll event
if (ScrollViewer.VerticalOffset == ScrollViewer.ScrollableHeight)
{ // Scroll bar is in bottom
// Set autoscroll mode
AutoScroll = true;
}
else
{ // Scroll bar isn't in bottom
// Unset autoscroll mode
AutoScroll = false;
}
}
// Content scroll event : autoscroll eventually
if (AutoScroll && e.ExtentHeightChange != 0)
{ // Content changed and autoscroll mode set
// Autoscroll
ScrollViewer.ScrollToVerticalOffset(ScrollViewer.ExtentHeight);
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.