I’m trying to implement panning within a Canvas within a scrollviewer like:
<ScrollViewer>
<Canvas>
<!-- some visual elements here -->
</Canvas>
</ScrollViewer>
I want a click and drag operation within the canvas to cause the contents of the canvas to move. I’ve tried handling the MouseDown, MouseMove, and MouseUp events to do a translation in the manner described here but it hasn’t worked.
Any ideas?
You can’t do that with your current setup. A Canvas will stretch beyond its parent container and the scrollviewer won’t know the size of the Canvas (it will tell it it doesn’t need to scroll) and therefore can’t create the handles.
If you want to skip with that set up change the canvas to a grid and use the Vertical Scroll and Horizontal Scroll and associated set properties to move the visible section of the grid around.