ComponentFactory.Krypton.Docking.KryptonAutoHiddenSlidePanel.Dispose C# (CSharp) Метод

Dispose() защищенный Метод

Clean up any resources being used.
protected Dispose ( bool disposing ) : void
disposing bool true if managed resources should be disposed; otherwise, false.
Результат void
        protected override void Dispose(bool disposing)
        {
            if (disposing)
            {
                // Dispose of the timer resources
                if (_slideTimer != null)
                {
                    _slideTimer.Stop();
                    _slideTimer.Dispose();
                    _slideTimer = null;
                }

                if (_dismissTimer != null)
                {
                    _dismissTimer.Stop();
                    _dismissTimer.Dispose();
                    _dismissTimer = null;
                    _dismissRunning = false;
                }

                // Remove cached references that might prevent those objects from being garbage collected
                _page = null;
                _group = null;

                // Remove ourself from the control we planted outself into
                _control.Controls.Remove(this);

                // Remove all the pages so that the pages have palette redirection reset
                _dockspaceSlide.ClearAllPages();

                // Unhook from events/static references to allow garbage collection
                _separator.SplitterMoving -= new SplitterCancelEventHandler(OnDockspaceSeparatorMoving);
                _separator.SplitterMoved -= new SplitterEventHandler(OnDockspaceSeparatorMoved);
                _separator.SplitterMoveRect -= new EventHandler<SplitterMoveRectMenuArgs>(OnDockspaceSeparatorMoveRect);
                _dockspaceSlide.CellLosesFocus -= new EventHandler<WorkspaceCellEventArgs>(OnDockspaceCellLosesFocus);
                _dockspaceSlide.PageCloseClicked -= new EventHandler<UniqueNameEventArgs>(OnDockspacePageCloseClicked);
                _dockspaceSlide.PageAutoHiddenClicked -= new EventHandler<UniqueNameEventArgs>(OnDockspacePageAutoHiddenClicked);
                _dockspaceSlide.PageDropDownClicked -= new EventHandler<CancelDropDownEventArgs>(OnDockspacePageDropDownClicked);
                Application.RemoveMessageFilter(this);
            }

            base.Dispose(disposing);
        }

Usage Example

Пример #1
0
        private void OnPanelDisposed(object sender, EventArgs e)
        {
            // Unhook from events so the control can be garbage collected
            _panel.Disposed -= OnPanelDisposed;

            // Events are generated from the parent docking manager
            KryptonDockingManager dockingManager = DockingManager;

            if (dockingManager != null)
            {
                // Only generate the removed event if we have already fired the adding event.
                if (_panelEventFired)
                {
                    AutoHiddenGroupPanelEventArgs panelArgs = new AutoHiddenGroupPanelEventArgs(_panel, this);
                    dockingManager.RaiseAutoHiddenGroupPanelRemoved(panelArgs);
                }
            }

            // Make sure the sliding panel is also disposed
            if (!_slidePanel.IsDisposed)
            {
                _slidePanel.Dispose();
            }
        }