namespace RyzStudio.Windows.ThemedForms { using System; using System.Drawing; using System.Windows.Forms; using RyzStudio.Drawing; using System.ComponentModel; public partial class LeftUserControl : System.Windows.Forms.UserControl { protected ThemeStyle styleActive = new ThemeStyle(1, 3, 2, Color.FromArgb(212, 212, 212), Color.White); public LeftUserControl() { InitializeComponent(); } protected override void OnLoad(EventArgs e) { base.OnLoad(e); this.BackColor = Color.Transparent; } protected override void OnPaintBackground(PaintEventArgs e) { base.OnPaintBackground(e); Graphics g = e.Graphics; //// g.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.HighQualityBicubic; //// g.CompositingQuality = System.Drawing.Drawing2D.CompositingQuality.HighQuality; //// g.PixelOffsetMode = System.Drawing.Drawing2D.PixelOffsetMode.HighQuality; //// g.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.HighQuality; updateBackground(g, styleActive); } [Browsable(false), EditorBrowsable(EditorBrowsableState.Never)] public new Padding Padding { get => base.Padding; set => base.Padding = value; } protected virtual void updateBackground(Graphics g, ThemeStyle style) { int b = (styleActive.BorderWidth + 1) + styleActive.BorderPadding; this.Padding = new Padding(b, b, 0, (b - 1)); LeftRectangoid area = new LeftRectangoid(this.ClientRectangle, style.BorderRadius, style.BorderWidth); g.FillPath(new SolidBrush(style.BackColour), area.ToClosedGraphicsPath()); g.DrawPath(new Pen(new SolidBrush(style.BorderColour), style.BorderWidth), area.ToGraphicsPath()); } } }