This is for automatically scrolling a scrollviewer. An example use would be when dragging an object to the edge of a scrollviewer. An example project showing its use in a drag and drop application is provided.

AutoScroller is a C# class for Silverlight. It adds automatic scrolling to a ScrollViewer. This is useful, for example, in a drag-and-drop interface inside a ScrollViewer: If an object is dragged to the edge, automatic scrolling can be triggered

See blog post regarding this: Silverlight AutoScroller Example

Rationale: ScrollViewer is a sealed class. Applying the functionality to it via a separate class seems like a neat approach.

Please refer to the documentation.


  • If the background of the content element is null, then the handlers will not respond while they are over empty spaces within the content (unless a content element has captured the mouse). Setting the background of the content element to Transparent will fix this, if it is an issue.
  • If mouse events have the handled property set to true by controls, it will prevent event bubble up, and may interfere with automatic scroll function.
  • AutoScrolling will work on a ScrollViewer with a Scrollbar's visibility set to Hidden. It won't work on that axis if the Scrollbar's visibility is set to Disabled.

Last edited Dec 7, 2011 at 1:03 AM by peterdongan, version 27