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;


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(00this.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

posted @ 2012-08-18 17:07  怡馨  阅读(3242)  评论(0编辑  收藏  举报