MetroFramework.Controls.MetroScrollBar.OnPaintBackground C# (CSharp) Method

OnPaintBackground() protected method

protected OnPaintBackground ( PaintEventArgs e ) : void
e PaintEventArgs
return void
        protected override void OnPaintBackground(PaintEventArgs e)
        {
            try
            {
                Color backColor = BackColor;

                if (!useCustomBackColor)
                {
                    if (Parent != null)
                    {
                        if (Parent is IMetroControl)
                        {
                            backColor = MetroPaint.BackColor.Form(Theme);
                        }
                        else
                        {
                            backColor = Parent.BackColor;
                        }
                    }
                    else
                    {
                        backColor = MetroPaint.BackColor.Form(Theme);
                    }
                }

                if (backColor.A == 255)
                {
                    e.Graphics.Clear(backColor);
                    return;
                }

                base.OnPaintBackground(e);

                OnCustomPaintBackground(new MetroPaintEventArgs(backColor, Color.Empty, e.Graphics));
            }
            catch
            {
                Invalidate();
            }
        }