The sample application lives in samples/AvaloniaDemo.Base and samples/AvaloniaDemo.Desktop. It exposes the main control capabilities as tabs, which makes it the fastest way to validate behavior before writing application code.
PanAndZoom Sample Areas
Commands: built-in ICommand bindings and common toolbar actions
Coordinate Conversion: ViewportToContent, ContentToViewport, and matrix-derived helpers
Bounds and Callbacks: visible bounds, viewport bounds, and content-bound callbacks
Keyboard and Reset: keyboard shortcuts, reset behavior, and focus requirements
Zoom-to-Rectangle: fitting or exactly matching content rectangles
Inertia and Gestures: gesture recognizers, pinch, and scroll interactions
View History: back/forward navigation across saved viewport states
Dynamic Zoom Limits: auto-calculated min and max zoom behavior
Grid and Snap: grid parameters and SnapToGrid(...) helpers
Rotation and Accessibility: rotation APIs, descriptions, and accessibility text
Saved Views and State Serialization: named views plus ExportState() and ImportState(...)
Resize Behavior and Gesture Fine Control: custom resize policies and gesture toggles
Why The Sample Matters
It shows the intended composition pattern for ZoomBorder in real XAML.
It demonstrates feature combinations that are easy to miss by reading only API docs.
It provides concrete scenarios that already map to unit tests in the repository.