C#实现渐变颜色的Windows窗体控件
C#实现渐变颜色的Windows窗体控件!
1,定义一个BaseFormGradient,继承于System.Windows.Forms.Form
2,定义三个变量:
private Color _Color1 = Color.Gainsboro;
private Color _Color2 = Color.White;
private float _ColorAngle = 0f;
private Color _Color2 = Color.White;
private float _ColorAngle = 0f;
3,重载OnPaintBackground方法
protected override void OnPaintBackground(PaintEventArgs pevent)
{
// Getting the graphics object
Graphics g = pevent.Graphics;
// Creating the rectangle for the gradient
Rectangle rBackground = new Rectangle(0, 0, this.Width, this.Height);
// Creating the lineargradient
System.Drawing.Drawing2D.LinearGradientBrush bBackground
= new System.Drawing.Drawing2D.LinearGradientBrush(rBackground, _Color1, _Color2, _ColorAngle);
// Draw the gradient onto the form
g.FillRectangle(bBackground, rBackground);
// Disposing of the resources held by the brush
bBackground.Dispose();
}
{
// Getting the graphics object
Graphics g = pevent.Graphics;
// Creating the rectangle for the gradient
Rectangle rBackground = new Rectangle(0, 0, this.Width, this.Height);
// Creating the lineargradient
System.Drawing.Drawing2D.LinearGradientBrush bBackground
= new System.Drawing.Drawing2D.LinearGradientBrush(rBackground, _Color1, _Color2, _ColorAngle);
// Draw the gradient onto the form
g.FillRectangle(bBackground, rBackground);
// Disposing of the resources held by the brush
bBackground.Dispose();
}
4,定义一个新窗体GradientForm,继承BaseFormGradient.
public class GradientForm : BaseFormGradient
5,在窗体GradientForm中,设置_Color1,_Color2,_ColorAngle