2010-01-18 54 views
1

我已經使用圖形的填充屬性創建了一個用戶控件。這是一個圓圈。它就像一個速度計,因此它有許多顏色,並使用不同的形狀填充。我需要讓它具有空白空間,使背景顏色與默認顏色以外的其他顏色相同。如何改變圖形的背景顏色?shape back color

+0

做我的最後一個職位回答這個問題?或者你還需要更多的幫助? – SwDevMan81 2010-01-18 19:56:58

回答

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); 
+0

如果我沒有錯,將繪製紅色的形狀。我畫了圓形的形狀,就像是一個速度計,但我想要將具有形式顏色的空白空間設置爲另一種顏色。例如, 。 圖形g = this.CreateGraphics(); SolidBrush myBrush = new SolidBrush(Color.Red); g.FillEllipse(myBrush,ClientRectangle); 它創建一個紅色矩形,但在該矩形內,我想要其他顏色。希望這是明確的... – Jankhana 2010-01-18 13:46:38

+0

好的,我更新了我的例子,讓我知道如果這就是你要找的。 – SwDevMan81 2010-01-18 15:15:14

+0

嘿,這很好,我會嘗試使用我的代碼,並讓你知道謝謝。 – Jankhana 2010-01-19 05:05:19