namespace RyzStudio.Windows.ThemedForms { using RyzStudio.Drawing; using System; using System.ComponentModel; using System.Drawing; using System.Windows.Forms; public partial class MemoBox : RyzStudio.Windows.ThemedForms.UserControl { protected readonly Padding textboxPadding = new Padding(6, 6, 0, 6); public MemoBox() : base() { InitializeComponent(); this.Margin = new Padding(10, 6, 10, 6); } //protected override void OnResize(EventArgs e) //{ // base.OnResize(e); // int b = (styleActive.BorderWidth + 1) + styleActive.BorderPadding; // this.Height = textBox1.Height + (b + textboxPadding.Top) + ((b - 1) + textboxPadding.Bottom); //} protected override void OnGotFocus(EventArgs e) { base.OnGotFocus(e); textBox1.Focus(); } [Browsable(true), EditorBrowsable(EditorBrowsableState.Advanced)] [Category("Appearance")] public System.Windows.Forms.TextBox InnerTextBox { get => textBox1; set => textBox1 = value; } [Browsable(true), EditorBrowsable(EditorBrowsableState.Advanced)] [Category("Appearance")] public new string Text { get => textBox1.Text; set => textBox1.Text = value; } [Browsable(false), EditorBrowsable(EditorBrowsableState.Never)] public new Padding Margin { get { return base.Margin; } set { base.Margin = value; } } protected override void updateBackground(Graphics g, ThemeStyle style) { int b = (styleActive.BorderWidth + 1) + styleActive.BorderPadding; this.Padding = new Padding((b + textboxPadding.Left), (b + textboxPadding.Top), ((b - 1) + textboxPadding.Right), ((b - 1) + textboxPadding.Bottom)); Rectangoid area = new Rectangoid(this.ClientRectangle, style.BorderRadius, style.BorderWidth); g.FillPath(new SolidBrush(style.BackColour), area.ToGraphicsPath()); g.DrawPath(new Pen(new SolidBrush(style.BorderColour), style.BorderWidth), area.ToGraphicsPath()); } } }