塑造背部颜色

时间:2010-01-18 13:18:29

标签: c# forms graphics

我使用图形的填充属性创建了一个用户控件。这是一个圆圈。它就像一个速度表,因此它有许多颜色,并使用不同的形状填充。我需要让它的空白区域为默认颜色以外的其他东西。如何更改图形形状的背面颜色???

1 个答案:

答案 0 :(得分:1)

查看Pens, Brushes and Colors

Graphics g = this.CreateGraphics();
SolidBrush myBrush = new SolidBrush(Color.Red);
g.FillEllipse(myBrush, ClientRectangle);

一个更完整的例子。这将填充UserControl的背景(基于用户控件的大小)为Pink,并创建一个充满橙色背景颜色的小圆圈。

  protected override void OnPaint(PaintEventArgs e)
  {
     Graphics g = e.Graphics;

     SolidBrush sb = new SolidBrush(Color.Pink);
     g.FillRectangle(sb, e.ClipRectangle);
     sb.Dispose();

     sb = new SolidBrush(Color.Orange);
     g.FillEllipse(sb, 20, 20, 20, 20);
     sb.Dispose();
  }

这更像是你在寻找什么?

如果您希望背景颜色与用户控件相同,请更改:

SolidBrush sb = new SolidBrush(this.BackColor); //Color.Pink);