protected override void Dispose(bool disposing) { if (disposing) { Element?.Unload(); Element?.DetachComponents(); if (_mouseDown != null) { _mouseDown.On -= OnMouseDown; _mouseDown.Dispose(); } if (_mouseUp != null) { _mouseUp.On -= OnMouseUp; _mouseUp.Dispose(); } if (_mouseMove != null) { _mouseMove.On -= OnMouseMove; _mouseMove.Dispose(); } } base.Dispose(disposing); }
protected override void OnDetached() { var obj = CircleSurfaceEffectBehavior.GetRotaryFocusObject(Element); DeativateRotaryFocusable(obj); _surface.Delete(); _surface = null; _surfaceLayout.Unrealize(); _surfaceLayout = null; CircleSurfaceEffectBehavior.SetSurface(Element, null); _showEvent.Dispose(); _hideEvent.Dispose(); _restackEvent.Dispose(); _moveEvent.Dispose(); _resizeEvent.Dispose(); }