/// <summary> /// See <see cref="ICtxtMenuControl.DoNavKey"/>. /// </summary> public void DoNavKey(CtxtMenuNavKey key) { if (key == CtxtMenuNavKey.Down || key == CtxtMenuNavKey.Up) { if (hoverIx == -1) { hoverIx = key == CtxtMenuNavKey.Down ? 0 : lblColl.Length - 1; } else { hoverIx += key == CtxtMenuNavKey.Down ? 1 : -1; if (hoverIx < 0) { hoverIx = lblColl.Length - 1; } else if (hoverIx == lblColl.Length) { hoverIx = 0; } } tblLayout.Invalidate(true); } if (key == CtxtMenuNavKey.Enter || key == CtxtMenuNavKey.Space) { if (hoverIx == -1) { return; } fire(hoverIx); } }
/// <summary> /// See <see cref="ICtxtMenuControl.DoNavKey"/>. /// </summary> public void DoNavKey(CtxtMenuNavKey key) { if (key == CtxtMenuNavKey.Down || key == CtxtMenuNavKey.Up) { if (hoverIx == -1) hoverIx = key == CtxtMenuNavKey.Down ? 0 : lblColl.Length - 1; else { hoverIx += key == CtxtMenuNavKey.Down ? 1 : -1; if (hoverIx < 0) hoverIx = lblColl.Length - 1; else if (hoverIx == lblColl.Length) hoverIx = 0; } tblLayout.Invalidate(true); } if (key == CtxtMenuNavKey.Enter || key == CtxtMenuNavKey.Space) { if (hoverIx == -1) return; fire(hoverIx); } }