[英]How to detect when a ScrollViewer finishes scrolling?
順便說一句,我在使用UWP以防萬一。 因此,我使用的是ListView,默認情況下,所有ListView都具有一個ScrollViewer附加到它們(默認模板)。 問題是我找不到在ListView完成滾動時觸發的事件(在ListView本身或其ScrollViewer上)。
我使用了scrollViewer.ChangeView()方法自動滾動到ListView的開始,並且它使用動畫滾動到頂部,所以我認為這與它有關,因為ViewChanged事件在動畫完成之前觸發。 如果對此我是正確的,那么就必須有一種方法來確定動畫是否完成,因為當ListView再次完全空閑時(僅在滾動動畫完成時),我需要被警告。 謝謝。
您可以連接scrollViewer的ViewChanged事件 ,然后檢查事件參數的IsIntermediate
。
private void ScrollViewer_ViewChanged(object sender, ScrollViewerViewChangedEventArgs e)
{
if (e.IsIntermediate)
{
System.Diagnostics.Debug.WriteLine("scroll ongoing");
}
else
{
System.Diagnostics.Debug.WriteLine("scroll finish");
}
}
此事件被觸發多次。 滾動完成時, IsIntermediate
為false。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.