阅读量:0
在C#中,使用GDI+(Graphics Device Interface)可以绘制自定义控件。以下是一个简单的示例,演示如何使用C# GDI+绘制一个自定义的矩形控件:
首先,创建一个新的Windows Forms应用程序项目。
在Form上绘制自定义矩形控件。为此,请在Form的
OnPaint
方法中使用Graphics
对象绘制矩形。以下是一个示例代码:
using System; using System.Drawing; using System.Windows.Forms; public class CustomRectangle : Control { private Color _rectangleColor = Color.Blue; private int _rectangleWidth = 100; private int _rectangleHeight = 50; public CustomRectangle() { this.DoubleBuffered = true; // 双缓冲以防止闪烁 } protected override void OnPaint(PaintEventArgs e) { base.OnPaint(e); // 设置画笔和画刷 using (Graphics g = e.Graphics) { using (Brush brush = new SolidBrush(_rectangleColor)) { // 绘制矩形 g.FillRectangle(brush, 0, 0, _rectangleWidth, _rectangleHeight); } } } // 设置矩形的颜色、宽度和高度 public Color RectangleColor { get { return _rectangleColor; } set { _rectangleColor = value; this.Invalidate(); } } public int RectangleWidth { get { return _rectangleWidth; } set { _rectangleWidth = value; this.Invalidate(); } } public int RectangleHeight { get { return _rectangleHeight; } set { _rectangleHeight = value; this.Invalidate(); } } }
- 将自定义矩形控件添加到Form上。在Form的
Load
事件处理器中,创建一个CustomRectangle
实例并将其添加到Form上,如下所示:
private void Form1_Load(object sender, EventArgs e) { CustomRectangle customRectangle = new CustomRectangle(); customRectangle.Location = new Point(50, 50); customRectangle.Size = new Size(200, 100); this.Controls.Add(customRectangle); }
现在,当您运行应用程序时,将显示一个自定义的矩形控件。您可以通过更改CustomRectangle
类的属性来更改矩形的颜色、宽度和高度。