我在使用漸變繪圖調用時遇到問題。我有一個看起來像這樣的表單。漸變繪圖錯誤
Screenshot http://img413.imageshack.us/img413/3570/30364682.png
的問題是現在每一次上述漸變,用於繪製錯誤就會開始發生。當然,它應該是正確的。有時只需要一些構建 - 重建 - 混搭來修復,並且在構建完成後,它只是簡單地「開始」。
該控件(頂部白色部分)是TableLayoutPanel
。該BackColor
設置爲白色,並在面板的Paint
事件我這樣做:
/// <summary>
/// Draws the background gradient.
/// </summary>
private void titleBarLayoutPanel_Paint(object sender, PaintEventArgs e)
{
Brush brush = new LinearGradientBrush(titleBarLayoutPanel.Bounds, TaskHeaderLeftColor, TaskHeaderRightColor, LinearGradientMode.Horizontal);
e.Graphics.FillRectangle(brush, titleBarLayoutPanel.Bounds);
}
我應該做別的事情?問題是,它的工作原理,然後沒有重建或建立這將開始發生!
編輯我已經重建了它所包含的類庫(它是一個通用的表單),然後重新構建了它所用的應用程序,並且漸變現在完全填滿了。這是奇怪的。
這工作正常。我意識到重建不會改變代碼的行爲方式,但是在幾個構建之間間歇性地工作/出錯仍然很奇怪。 – 2010-06-04 04:46:35
原來它現在再做一次!沒有那麼多的第二天開放項目,並運行它。 /哭聲。 – 2010-06-08 04:16:49
我改變了'FillRectangle'調用以使用'e.ClipRectangle'。它現在正在工作,但我不確定是否修復它。 – 2010-06-08 04:35:17