Why is that every time i draw a line or rectangle it goes to a
different position in OnMouseDown() event.
Here's the sample code.
PointF _start_pt;
protected override void OnMouseDown(MouseEventArgs e)
{
base.OnMouseMove(e);
if (_tool_mode == CustomToolMode.e_custom_distance_tool)
{
_cur_page = GetPageNumberFromScreenPt(e.X, e.Y);
double x = e.X;
double y = e.Y;
this.ConvScreenPtToPagePt(ref x, ref y, _cur_page);
_start_pt.X = (float)x;
_start_pt.Y = (float)y;
Capture = true;
}
}
protected override void OnPaint(PaintEventArgs e)
{
Matrix m = GetDeviceTransform(_cur_page);
e.Graphics.MultiplyTransform(m);
e.Graphics.DrawRectangle(Pens.Blue, _start_pt.X,
_start_pt.Y, 100, 100);
}