protected override void OnPaint(PaintEventArgs e) { base.OnPaint(e); LinearGradientBrush LGB = null; GraphicsPath GP = null; e.Graphics.Clear(BackColor); e.Graphics.SmoothingMode = SmoothingMode.AntiAlias; // Create a curvy border GP = RoundRectangle.RoundRect(0, 0, Width - 1, Height - 1, 5); // Fills the body of the rectangle with a gradient LGB = new LinearGradientBrush(ClientRectangle, Color.FromArgb(241, 241, 241), Color.FromArgb(241, 241, 241), 90.0F); e.Graphics.SetClip(GP); e.Graphics.FillRectangle(LGB, ClientRectangle); e.Graphics.ResetClip(); // Draw rectangle border e.Graphics.DrawPath(new Pen(Color.FromArgb(204, 204, 204)), GP); // Draw string e.Graphics.DrawString(Text, Font, new SolidBrush(Color.FromArgb(142, 142, 142)), new Rectangle(3, 0, Width - 20, Height), new StringFormat { LineAlignment = StringAlignment.Center, Alignment = StringAlignment.Near }); // Draw the dropdown arrow e.Graphics.DrawLine(new Pen(Color.FromArgb(160, 160, 160), 2F), new Point(Width - 18, 10), new Point(Width - 14, 14)); e.Graphics.DrawLine(new Pen(Color.FromArgb(160, 160, 160), 2F), new Point(Width - 14, 14), new Point(Width - 10, 10)); e.Graphics.DrawLine(new Pen(Color.FromArgb(160, 160, 160)), new Point(Width - 14, 15), new Point(Width - 14, 14)); GP.Dispose(); LGB.Dispose(); }
protected override void OnPaint(System.Windows.Forms.PaintEventArgs e) { base.OnPaint(e); Bitmap B = new Bitmap(Width, Height); Graphics G = Graphics.FromImage(B); Rectangle TitleBox = new Rectangle(51, 3, Width - 103, 18); Rectangle box = new Rectangle(0, 0, Width - 1, Height - 10); G.Clear(Color.Transparent); G.SmoothingMode = SmoothingMode.HighQuality; // Specifies antialiased rendering // Draw the body of the GroupBox G.FillPath(Brushes.White, RoundRectangle.RoundRect(new Rectangle(1, 12, Width - 3, box.Height - 1), 8)); // Draw the border of the GroupBox G.DrawPath(new Pen(Color.FromArgb(159, 159, 161)), RoundRectangle.RoundRect(new Rectangle(1, 12, Width - 3, Height - 13), 8)); // Draw the background of the title box G.FillPath(Brushes.White, RoundRectangle.RoundRect(TitleBox, 1)); // Draw the border of the title box G.DrawPath(new Pen(Color.FromArgb(182, 180, 186)), RoundRectangle.RoundRect(TitleBox, 4)); // Draw the specified string from 'Text' property inside the title box G.DrawString(Text, new Font("Tahoma", 9F, FontStyle.Regular), new SolidBrush(Color.FromArgb(53, 53, 53)), TitleBox, new StringFormat() { Alignment = StringAlignment.Center, LineAlignment = StringAlignment.Center }); e.Graphics.DrawImage((Image)B.Clone(), 0, 0); G.Dispose(); B.Dispose(); }
protected override void OnPaint(System.Windows.Forms.PaintEventArgs e) { base.OnPaint(e); Graphics G = e.Graphics; HatchBrush Hatch = new HatchBrush(HatchStyle.WideDownwardDiagonal, Color.FromArgb(20, Color.Black), Color.Transparent); G.Clear(Parent.BackColor); G.SmoothingMode = SmoothingMode.AntiAlias; PipeBorder = RoundRectangle.RoundRect(1, 6, Width - 3, 8, 3); try { ValueDrawer = Convert.ToInt32((_Value - _Minimum) / (_Maximum - _Minimum) * (Width - 11)); } catch (Exception ex) { } TrackBarHandleRect = new Rectangle(ValueDrawer, 0, 10, 20); G.SetClip(PipeBorder); // Set the clipping region of this Graphics to the specified GraphicsPath ValueRect = new Rectangle(1, 7, TrackBarHandleRect.X + TrackBarHandleRect.Width - 2, 7); VlaueLGB = new LinearGradientBrush(ValueRect, _ValueColour, _ValueColour, 90.0F); G.FillRectangle(VlaueLGB, ValueRect); if (_DrawHatch == true) { G.FillRectangle(Hatch, ValueRect); } G.ResetClip(); // Reset the clip region of this Graphics to an infinite region G.SmoothingMode = SmoothingMode.AntiAlias; G.DrawPath(new Pen(Color.FromArgb(180, 180, 180)), PipeBorder); // Draw pipe border TrackBarHandle = RoundRectangle.RoundRect(TrackBarHandleRect, 3); TrackBarHandleLGB = new LinearGradientBrush(ClientRectangle, SystemColors.Control, SystemColors.Control, 90.0F); // Fill the handle body with the specified color gradient G.FillPath(TrackBarHandleLGB, TrackBarHandle); // Draw handle borders G.DrawPath(new Pen(Color.FromArgb(180, 180, 180)), TrackBarHandle); if (_DrawValueString == true) { G.DrawString(ValueToSet.ToString(), Font, Brushes.Gray, 0, 25); } }
protected override void OnPaint(System.Windows.Forms.PaintEventArgs e) { base.OnPaint(e); Bitmap B = new Bitmap(Width, Height); Graphics G = Graphics.FromImage(B); Rectangle ClientRectangle = new Rectangle(0, 0, Width - 1, Height - 1); Color TransparencyKey = this.ParentForm.TransparencyKey; G.SmoothingMode = SmoothingMode.Default; G.Clear(TransparencyKey); // Draw the container borders G.FillPath(new SolidBrush(Color.FromArgb(52, 52, 52)), RoundRectangle.RoundRect(ClientRectangle, BorderCurve)); // Draw a rectangle in which the controls should be added on G.FillPath(new SolidBrush(Color.FromArgb(246, 246, 246)), RoundRectangle.RoundRect(new Rectangle(2, 20, Width - 5, Height - 42), BorderCurve)); // Patch the header with a rectangle that has a curve so its border will remain within container bounds G.FillPath(new SolidBrush(Color.FromArgb(52, 52, 52)), RoundRectangle.RoundRect(new Rectangle(2, 2, Width / 2 + 2, 16), BorderCurve)); G.FillPath(new SolidBrush(Color.FromArgb(52, 52, 52)), RoundRectangle.RoundRect(new Rectangle(Width / 2 - 3, 2, Width / 2, 16), BorderCurve)); // Fill the header rectangle below the patch G.FillRectangle(new SolidBrush(Color.FromArgb(52, 52, 52)), new Rectangle(2, 15, Width - 5, 10)); // Increase the thickness of the container borders G.DrawPath(new Pen(Color.FromArgb(52, 52, 52)), RoundRectangle.RoundRect(new Rectangle(2, 2, Width - 5, Height - 5), BorderCurve)); G.DrawPath(new Pen(Color.FromArgb(52, 52, 52)), RoundRectangle.RoundRect(ClientRectangle, BorderCurve)); // Draw the string from the specified 'Text' property on the header rectangle G.DrawString(Text, new Font("Trebuchet MS", 10F, FontStyle.Bold), new SolidBrush(Color.FromArgb(221, 221, 221)), new Rectangle(BorderCurve, BorderCurve - 4, Width - 1, 22), new StringFormat() { Alignment = StringAlignment.Center, LineAlignment = StringAlignment.Near }); // Draws a rectangle at the bottom of the container G.FillRectangle(new SolidBrush(Color.FromArgb(52, 52, 52)), 0, Height - 25, Width - 3, 22 - 2); G.DrawLine(new Pen(Color.FromArgb(52, 52, 52)), 5, Height - 5, Width - 6, Height - 5); G.DrawLine(new Pen(Color.FromArgb(52, 52, 52)), 7, Height - 4, Width - 7, Height - 4); G.DrawString(_TextBottom, new Font("Trebuchet MS", 10F, FontStyle.Bold), new SolidBrush(Color.FromArgb(221, 221, 221)), 5, Height - 23); e.Graphics.DrawImage((Image)B.Clone(), 0, 0); G.Dispose(); B.Dispose(); }
protected override void OnPaint(System.Windows.Forms.PaintEventArgs e) { base.OnPaint(e); Bitmap B = new Bitmap(Width, Height); Graphics G = Graphics.FromImage(B); GraphicsPath GP_MinimizeRect = new GraphicsPath(); GraphicsPath GP_CloseRect = new GraphicsPath(); GP_MinimizeRect.AddRectangle(MinimizeRect); GP_CloseRect.AddRectangle(CloseRect); G.Clear(BackColor); switch (State) { case MouseState.None: { LinearGradientBrush MinimizeGradient = new LinearGradientBrush(MinimizeRect, Color.FromArgb(73, 73, 73), Color.FromArgb(58, 58, 58), 90); G.FillPath(MinimizeGradient, GP_MinimizeRect); G.DrawPath(new Pen(Color.FromArgb(40, 40, 40)), GP_MinimizeRect); G.DrawString("0", new Font("Marlett", 11F, FontStyle.Regular), new SolidBrush(Color.FromArgb(221, 221, 221)), MinimizeRect.Width - 22, MinimizeRect.Height - 16); LinearGradientBrush CloseGradient = new LinearGradientBrush(CloseRect, Color.FromArgb(73, 73, 73), Color.FromArgb(58, 58, 58), 90); G.FillPath(CloseGradient, GP_CloseRect); G.DrawPath(new Pen(Color.FromArgb(40, 40, 40)), GP_CloseRect); G.DrawString("r", new Font("Marlett", 11F, FontStyle.Regular), new SolidBrush(Color.FromArgb(221, 221, 221)), CloseRect.Width - 4, CloseRect.Height - 16); break; } case MouseState.Over: { if (i > 0 && i < 28) { LinearGradientBrush MinimizeGradient = new LinearGradientBrush(MinimizeRect, Color.FromArgb(76, 76, 76, 76), Color.FromArgb(48, 48, 48), 90); G.FillPath(MinimizeGradient, GP_MinimizeRect); G.DrawPath(new Pen(Color.FromArgb(40, 40, 40)), GP_MinimizeRect); G.DrawString("0", new Font("Marlett", 11F, FontStyle.Regular), new SolidBrush(Color.FromArgb(221, 221, 221)), MinimizeRect.Width - 22, MinimizeRect.Height - 16); LinearGradientBrush CloseGradient = new LinearGradientBrush(CloseRect, Color.FromArgb(73, 73, 73), Color.FromArgb(58, 58, 58), 90); G.FillPath(CloseGradient, GP_CloseRect); G.DrawPath(new Pen(Color.FromArgb(40, 40, 40)), GP_CloseRect); G.DrawString("r", new Font("Marlett", 11F, FontStyle.Regular), new SolidBrush(Color.FromArgb(221, 221, 221)), CloseRect.Width - 4, CloseRect.Height - 16); } else if (i > 30 && i < 75) { LinearGradientBrush CloseGradient = new LinearGradientBrush(CloseRect, Color.FromArgb(76, 76, 76, 76), Color.FromArgb(48, 48, 48), 90); G.FillPath(CloseGradient, GP_CloseRect); G.DrawPath(new Pen(Color.FromArgb(40, 40, 40)), GP_CloseRect); G.DrawString("r", new Font("Marlett", 11F, FontStyle.Regular), new SolidBrush(Color.FromArgb(221, 221, 221)), CloseRect.Width - 4, CloseRect.Height - 16); LinearGradientBrush MinimizeGradient = new LinearGradientBrush(MinimizeRect, Color.FromArgb(73, 73, 73), Color.FromArgb(58, 58, 58), 90); G.FillPath(MinimizeGradient, RoundRectangle.RoundRect(MinimizeRect, 1)); G.DrawPath(new Pen(Color.FromArgb(40, 40, 40)), GP_MinimizeRect); G.DrawString("0", new Font("Marlett", 11F, FontStyle.Regular), new SolidBrush(Color.FromArgb(221, 221, 221)), MinimizeRect.Width - 22, MinimizeRect.Height - 16); } else { LinearGradientBrush MinimizeGradient = new LinearGradientBrush(MinimizeRect, Color.FromArgb(73, 73, 73), Color.FromArgb(58, 58, 58), 90); G.FillPath(MinimizeGradient, GP_MinimizeRect); G.DrawPath(new Pen(Color.FromArgb(40, 40, 40)), GP_MinimizeRect); G.DrawString("0", new Font("Marlett", 11F, FontStyle.Regular), new SolidBrush(Color.FromArgb(221, 221, 221)), MinimizeRect.Width - 22, MinimizeRect.Height - 16); LinearGradientBrush CloseGradient = new LinearGradientBrush(CloseRect, Color.FromArgb(73, 73, 73), Color.FromArgb(58, 58, 58), 90); G.FillPath(CloseGradient, GP_CloseRect); G.DrawPath(new Pen(Color.FromArgb(40, 40, 40)), GP_CloseRect); G.DrawString("r", new Font("Marlett", 11F, FontStyle.Regular), new SolidBrush(Color.FromArgb(221, 221, 221)), CloseRect.Width - 4, CloseRect.Height - 16); } break; } } e.Graphics.DrawImage((Image)B.Clone(), 0, 0); G.Dispose(); GP_CloseRect.Dispose(); GP_MinimizeRect.Dispose(); B.Dispose(); }