如何将颜色逐渐从黄色变为绿色

时间:2011-10-15 11:21:44

标签: c# winforms

如何使用C#逐渐从黄色到绿色在winform上着色?

感谢您的帮助

2 个答案:

答案 0 :(得分:2)

您可以实现表单的draw事件。确保双倍缓冲以减少闪烁。然后绘制一个带有LinearGradientBrush的矩形。

这应该让你开始。

http://weblogs.asp.net/cfrazier/archive/2005/08/10/422179.aspx

答案 1 :(得分:2)

示例:

using System.Drawing;
using System.Drawing.Drawing2D;

public Form1() {
  InitializeComponent();
  this.DoubleBuffered = true;
  this.ResizeRedraw = true;
}

protected override void OnPaintBackground(PaintEventArgs e) {
  using (var lgb = new LinearGradientBrush(this.ClientRectangle, Color.Yellow, Color.Green, LinearGradientMode.Vertical))
    e.Graphics.FillRectangle(lgb, this.ClientRectangle);
}