protected override void OnPaint(PaintEventArgs e) { Bitmap offscreenBitmap = new Bitmap(ClientSize.Width, ClientSize.Height); Graphics output = Graphics.FromImage(offscreenBitmap); EnhancedControlHelper.PaintRoundedBackground( output, ClientRectangle, Bounds, BorderSize, BorderColor, CornerRadius, plainLeft, plainRight, plainTop, plainBottom, false, BackColor, Parent, FilterColor); e.Graphics.DrawImage(offscreenBitmap, 0, 0); offscreenBitmap.Dispose(); base.OnPaint(e); }
protected override void OnPaint(PaintEventArgs pe) { pe.Graphics.Clear(BackColor); if (BackgroundImage != null) { Bitmap offscreenBitmap = new Bitmap(ClientSize.Width, ClientSize.Height); Graphics output = Graphics.FromImage(offscreenBitmap); EnhancedControlHelper.PaintBackground( output, BackgroundImage, ClientSize, Bounds, HorizontalAlignment, SizeXMode, VerticalAlignment, SizeYMode, AdaptBackground, HeaderHeight, FooterHeight, MarginLeftWidth, MarginRightWidth, HeaderTileWidth, FooterTileWidth, MarginLeftTileHeight, MarginRightTileHeight, Parent, FilterColor); pe.Graphics.DrawImage(offscreenBitmap, 0, 0); offscreenBitmap.Dispose(); if (iconimage != null) { pe.Graphics.DrawImage(iconimage, (BackgroundImage.Width / 6) - iconimage.Width, (BackgroundImage.Width / 6) - iconimage.Width); pe.Graphics.DrawString(this.Text, new Font("Tahoma", 8F, FontStyle.Bold), new SolidBrush(this.ForeColor), (BackgroundImage.Width / 6) + 5, (BackgroundImage.Width / 6) - iconimage.Width + 5); // pe.Graphics.DrawString(this.Text, new Font("Tahoma", 8F, FontStyle.Bold), new SolidBrush(this.ForeColor), 0,0); } } base.OnPaint(pe); }
protected override void OnPaint(PaintEventArgs pe) { pe.Graphics.Clear(BackColor); Bitmap currentImage = mouseDown ? ClickedBackgroundImage : BackgroundImage; if (currentImage != null) { Bitmap offscreenBitmap = new Bitmap(ClientSize.Width, ClientSize.Height); Graphics output = Graphics.FromImage(offscreenBitmap); EnhancedControlHelper.PaintBackground( output, currentImage, ClientSize, Bounds, HorizontalAlignment, SizeXMode, VerticalAlignment, SizeYMode, AdaptBackground, HeaderHeight, FooterHeight, MarginLeftWidth, MarginRightWidth, HeaderTileWidth, FooterTileWidth, MarginLeftTileHeight, MarginRightTileHeight, Parent, FilterColor); pe.Graphics.DrawImage(offscreenBitmap, 0, 0); offscreenBitmap.Dispose(); this.MisureString(); pe.Graphics.DrawString(this.Text, this.Font, new SolidBrush(this.ForeColor), (this.Width - wstring) / 2, this.Height - (this.Height / 3)); } }
protected override void OnPaint(PaintEventArgs e) { SizeF headerSize = e.Graphics.MeasureString(HeaderText, headerFont); if (!InlineHeader) { EnhancedControlHelper.PaintRoundedBackground( e.Graphics, new Rectangle(0, HeaderHeight, (int)Math.Ceiling(ClientSize.Width), ClientSize.Height - HeaderHeight), Bounds, BorderSize, BorderColor, CornerRadius, false, false, false, false, false, BackColor, Parent, FilterColor); Color fillColor = BackColor; if (BackColor == Color.Transparent) { fillColor = Parent.BackColor; } Brush fillBrush = new SolidBrush(fillColor); RectangleF headerRectangle = new RectangleF( Math.Max(HeaderOffset * ClientSize.Width, CornerRadius + BorderSize), 0, Math.Min(ClientSize.Width - BorderSize - Math.Max(HeaderOffset * headerSize.Width, CornerRadius + BorderSize), headerSize.Width + 8), HeaderHeight); if (HeaderOffset == 0) { headerRectangle.X = 0; } if (HeaderOffset == 1) { headerRectangle.X = ClientSize.Width - headerRectangle.Width; } RectangleF textRectangle = new RectangleF( headerRectangle.X + (headerRectangle.Width - headerSize.Width) / 2, headerRectangle.Y + (HeaderHeight - headerSize.Height) / 2, headerRectangle.Width, headerRectangle.Height); e.Graphics.FillRectangle( fillBrush, (int)Math.Ceiling(headerRectangle.X), (int)Math.Ceiling(HeaderHeight), (int)Math.Ceiling(headerRectangle.Width), (int)Math.Ceiling((headerOffset != 0 && headerOffset != 1) ? BorderSize : BorderSize + CornerRadius)); Brush borderBursh = new SolidBrush(BorderColor); if (headerOffset == 0) { e.Graphics.FillRectangle(borderBursh, new Rectangle(0, (int)Math.Ceiling(HeaderHeight), BorderSize, BorderSize + CornerRadius)); } if (headerOffset == 1) { e.Graphics.FillRectangle(borderBursh, new Rectangle(ClientSize.Width - BorderSize, (int)Math.Ceiling(headerSize.Height + HeaderHeight), BorderSize, BorderSize + CornerRadius)); } EnhancedControlHelper.PaintRoundedRectangle( e.Graphics, BorderColor, BorderSize, HeaderBackColor, new Rectangle((int)Math.Ceiling(headerRectangle.X), (int)Math.Ceiling(headerRectangle.Y), (int)Math.Ceiling(headerRectangle.Width), (int)headerRectangle.Height + BorderSize), new Size(CornerRadius, CornerRadius), false, false, false, true); Brush textBrush = new SolidBrush(HeaderColor); e.Graphics.DrawString(HeaderText, headerFont, textBrush, textRectangle); borderBursh.Dispose(); fillBrush.Dispose(); } else { EnhancedControlHelper.PaintRoundedBackground( e.Graphics, new Rectangle(0, (int)(headerSize.Height / 2), (int)Math.Ceiling(ClientSize.Width), ClientSize.Height - (int)(headerSize.Height / 2)), Bounds, BorderSize, BorderColor, CornerRadius, false, false, false, false, false, BackColor, Parent, FilterColor); RectangleF headerRectangle = new RectangleF( Math.Max(HeaderOffset * ClientSize.Width, CornerRadius + BorderSize), 0, Math.Min(ClientSize.Width - BorderSize - Math.Max(HeaderOffset * headerSize.Width, CornerRadius + BorderSize), HeaderHeight), headerSize.Height); RectangleF textRectangle = new RectangleF( headerRectangle.X + (headerRectangle.Width - headerSize.Width) / 2, (headerRectangle.Height - headerSize.Height) / 2, headerRectangle.Width, headerSize.Height); Color fillColor = BackColor; if (BackColor == Color.Transparent) { fillColor = Parent.BackColor; } if (HeaderOffset == 0) { headerRectangle.X = 0; } if (HeaderOffset == 1) { headerRectangle.X = ClientSize.Width - headerRectangle.Width; } Brush textBrush = new SolidBrush(HeaderColor); e.Graphics.DrawString(HeaderText, headerFont, textBrush, textRectangle); textBrush.Dispose(); } }