Ich habe eine Anwendung, wo ich eine bestimmte Aktion ausführen muss, wenn der Benutzer an einen bestimmten Ort in einem ScrollViewer
gelangt. Diese Aktion enthält manchmal das Verschieben des ScrollViewer
an einem anderen Speicherort programmgesteuert.UWP ScrollViewer - Unterscheiden zwischen Benutzerscrollen und programmgesteuertem Scrollen
Um die Scroll-Aktion des Benutzers zu überwachen, höre ich für die ViewChanged
Ereignis der ScrollViewer
. Das Problem ist, dass, wenn ich im Ereignis-Handler ViewChanged
programrmatisch blättern werde, derselbe Ereignis-Handler wieder aufgerufen wird, wodurch unerwünschtes zusätzliches Scrollen verursacht wird.
Ich habe versucht, eine benutzerdefinierte Methode zu erstellen, um den Ereignishandler vor dem Aufruf ScrollViewer.ChangeView()
zu entfernen, aber dies scheint keine Auswirkungen zu haben.
Kann mir jemand einen Weg finden, um dieses Problem zu lösen, oder eine Möglichkeit, die Scroll-Aktion des Benutzers von meiner programmatischen zu unterscheiden?