public void UnregisterHotkey()
        {
            if (this._hotkeyHandler == null)
            {
                return;
            }

            this._hotkeyHandler.Unregister();
            this._hotkeyHandler.Pressed -= HotkeyPressed_Handler;
            this._hotkeyHandler.Dispose();
            this._hotkeyHandler = null;
        }
        public void RegisterHotkey(Keys hotkey)
        {
            if (this._hotkeyHandler != null)
            {
                this.UnregisterHotkey();
            }

            if (hotkey == Keys.None)
            {
                return;
            }

            this._hotkeyHandler          = new HotkeyHandler(this.Handle, hotkey);
            this._hotkeyHandler.Pressed += HotkeyPressed_Handler;
            try
            {
                this._hotkeyHandler.Register();
            }
            catch (Exception)
            {
                // There can be a lot of possible exception reasons here
                // In case of any of them the hotkey setting is silently ignored
            }
        }