ComponentFactory.Krypton.Ribbon.CustomControlController.KeyTipSelect C# (CSharp) Method

KeyTipSelect() public method

Perform actual selection of the item.
public KeyTipSelect ( KryptonRibbon ribbon ) : void
ribbon KryptonRibbon Reference to owning ribbon instance.
return void
        public void KeyTipSelect(KryptonRibbon ribbon)
        {
            // Can the custom control take the focus
            if (_customControl.LastCustomControl.CanFocus)
            {
                // Prevent the ribbon from killing keyboard mode when it loses the focus,
                // as this causes the tracking windows to be killed and we want them kept
                ribbon.LostFocusLosesKeyboard = false;

                // Prevent the restore of focus when we fill the keyboard mode, as the focus
                // has been placed on the custom control and so focus is allowed to change
                ribbon.IgnoreRestoreFocus = true;

                // Exit the use of keyboard mode
                ribbon.KillKeyboardMode();

                // Push focus to the specified target control
                _customControl.LastCustomControl.Focus();

                // If the custom control is inside a popup window
                if (_customControl.LastParentControl is VisualPopupGroup)
                {
                    // Ensure that the previous ribbon focus is restored when the popup window is dismissed
                    VisualPopupGroup popupGroup = (VisualPopupGroup)_customControl.LastParentControl;
                    popupGroup.RestorePreviousFocus = true;
                }
            }
        }