Пример #1
0
        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();
            }
        }