} // proc OnMouseMove /// <summary>Panning emulation for mouse.</summary> /// <param name="e"></param> protected override void OnMouseUp(MouseButtonEventArgs e) { if (Mouse.Captured == this) { mouseTransformInfo = null; Mouse.Capture(null); Mouse.OverrideCursor = null; e.Handled = true; } base.OnMouseUp(e); } // proc OnMouseUp
} // proc OnMouseWheel /// <summary>Panning emulation for mouse.</summary> /// <param name="e"></param> protected override void OnMouseDown(MouseButtonEventArgs e) { if (Keyboard.Modifiers == ModifierKeys.None && IsPanningAllowed) { if (Mouse.Capture(this, CaptureMode.Element)) { mouseTransformInfo = new MouseTransformInfo(e.GetPosition(this), BeginContentTransform()); Mouse.OverrideCursor = Cursors.Hand; e.Handled = true; } } base.OnMouseDown(e); } // proc OnMouseDown