怎样用C# GDI绘制自定义控件

avatar
作者
猴君
阅读量:0

在C#中,使用GDI+(Graphics Device Interface)可以绘制自定义控件。以下是一个简单的示例,演示如何使用C# GDI+绘制一个自定义的矩形控件:

  1. 首先,创建一个新的Windows Forms应用程序项目。

  2. 在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(); }     } } 
  1. 将自定义矩形控件添加到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类的属性来更改矩形的颜色、宽度和高度。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!