private void _DrawingBoard_PanelZoomed(object sender, BoardZoomEventArgs e) { var mpoint = PointToClient(MousePosition); if (_DrawingBoard.Width > Width) { _HScrollBar.Enabled = true; _HScrollBar.Minimum = -_Blankness; _HScrollBar.Maximum = _DrawingBoard.Width - Width + _Blankness; var acu = e.MouseClickedLocation.X / e.OldZoom; var now = acu * Zoom; _HScrollBar.Value = -(int)(mpoint.X - now); } else { _HScrollBar.Enabled = false; } if (_DrawingBoard.Height > Height) { _VScrollBar.Enabled = true; _VScrollBar.Minimum = -_Blankness; _VScrollBar.Maximum = _DrawingBoard.Height - Height + _Blankness; var acu = e.MouseClickedLocation.Y / e.OldZoom; var now = acu * Zoom; _VScrollBar.Value = -(int)(mpoint.Y - now); } else { _VScrollBar.Enabled = false; } Refresh(); }
private void OnZoomed(BoardZoomEventArgs e) { EventHandler <BoardZoomEventArgs> handler = Zoomed; if (handler != null) { handler(this, e); } }