protected override void OnPaint(PaintEventArgs e) { if (isCallingDoEvents) { return; } if (!viewInitialized) { InitializeView(); } if (!viewInitialized) { return; //initialize in the line above failed. } isManipulated = false; isInvalidated = false; base.OnPaint(e); //Reset background bufferGraphics.FillRectangle(whiteBrush, 0, 0, buffer.Width, buffer.Height); //set startTicks for use in AbortRender startTicks = DateTime.Now.Ticks; //Render to the buffer GdiMapRenderer.Render(bufferGraphics, new Viewport(viewport), map, AbortRender); //Render the buffer to the control e.Graphics.DrawImage(buffer, 0, 0); if (isInvalidated) { Invalidate(); } }