Exemplo n.º 1
0
 private void TryReCreateCanvasHost(bool isUseDefaultBackgroudLayer)
 {
     if (_runtime == null)
     {
         return;
     }
     if (_canvasHost == null)
     {
         _canvasHost = new CanvasHost();
         _canvasHost.CreateCanvas();
         _canvasHost.Dock = DockStyle.Fill;
         _canvasHost.Canvas.IsDrawScalePercent = false;
         _canvasHost.Canvas.OnEnvelopeChanged += new EventHandler((sender, e) =>
         {
             _isNeedReRender = true;
         });
         if (_canvasHost.Canvas != null && _canvasHost.Canvas.CanvasSetting != null && _canvasHost.Canvas.CanvasSetting.RenderSetting != null)
         {
             _canvasHost.Canvas.CanvasSetting.RenderSetting.BackColor = Color.White;
         }
         TryApplyDefaultBackgroudLayer(isUseDefaultBackgroudLayer);
         Controls.Add(_canvasHost);
     }
     _canvasHost.Size = Size;
     if (_buffer == null || _buffer.Width != _canvasHost.Width || _buffer.Height != _canvasHost.Height)
     {
         if (_buffer != null)
         {
             _buffer.Dispose();
         }
         _buffer = new Bitmap(_canvasHost.Width, _canvasHost.Height, PixelFormat.Format24bppRgb);
     }
 }
Exemplo n.º 2
0
        private void button11_Click(object sender, EventArgs e)
        {
            _rasterLayer = null;
            this.Controls.Remove(canvasHost1);
            _canvas = null;
            CanvasHost host = this.canvasHost1;

            this.canvasHost1 = null;
            (host as IDisposable).Dispose();
            (host as UserControl).Dispose();
            GC.Collect();
        }
Exemplo n.º 3
0
        void IDisposable.Dispose()
        {
            if (_canvasHost != null)
            {
                if (_canvasHost as IDisposable != null)
                {
                    (_canvasHost as IDisposable).Dispose();
                }
                _canvasHost.Dispose();
                _canvasHost = null;
            }
            if (_buffer != null)
            {
                _buffer.Dispose();
                _buffer = null;
            }

            _runtime   = null;
            _dataFrame = null;
        }