Отключение подсказок фокусировки в SplitContainer

Как я могу отключить подсказки фокуса в SplitContainer? Я спрашиваю, потому что я предпочел бы нарисовать их сам, используя OnPaint, чтобы он выглядел более плавным.

Я попробовал это:

    protected override bool ShowFocusCues
    {
        get
        {
            return false;
        }
    }

И это мой контроль :

    public class cSplitContainer : SplitContainer
    {
        private bool IsDragging;

        protected override void OnMouseDown(MouseEventArgs e)
        {
            base.OnMouseDown(e);
            if (!IsSplitterFixed) IsDragging = true;
            Invalidate();
        }
        protected override void OnMouseUp(MouseEventArgs e)
        {
            base.OnMouseUp(e);
            if (IsDragging)
            {
                IsDragging = false;
                IsSplitterFixed = false;
            }
        }
        protected override void OnMouseMove(MouseEventArgs e)
        {
            base.OnMouseMove(e);
            if (IsDragging)
            {
                IsSplitterFixed = true;
                if (e.Button == MouseButtons.Left)
                {
                    if (Orientation == Orientation.Vertical)
                    {
                        if (e.X > 0 && e.X < Width) SplitterDistance = e.X;
                    }
                    else
                    {
                        if (e.Y > 0 && e.Y < Height) SplitterDistance = e.Y;
                    }
                }
                else
                {
                    IsDragging = false;
                    IsSplitterFixed = false;
                }
            }
        }
        protected override void OnPaint(System.Windows.Forms.PaintEventArgs e)
        {
            base.OnPaint(e);
            if (IsDragging)
            {
                e.Graphics.FillRectangle(new SolidBrush(Color.FromArgb(127, 0, 0, 0)), Orientation == Orientation.Horizontal ? new Rectangle(0, SplitterDistance, Width, SplitterWidth) : new Rectangle(SplitterDistance, 0, SplitterWidth, Height));
            }
        }
    }

, но это не сработало. Я также пробовал некоторые другие методы, упомянутые ранее, но я все еще получаю сигналы фокусировки.

5
задан bytecode77 14 March 2012 в 18:34
поделиться