一个自定义LABEL组件的C#源代码

王朝c#·作者佚名  2006-01-09
宽屏版  字体: |||超大  

using System;

using System.Windows.Forms;

using System.Drawing;

using System.Drawing.Drawing2D;

using System.ComponentModel;

namespace wzsbmain

{

/// <summary>

/// Summary description for LabelGradient.

/// </summary>

public class wzsbmainLabel : System.Windows.Forms.Label

{

#region Implementtation Member Fields

protected Color gradientColorOne = Color.White;

protected Color gradientColorTwo = Color.Blue;

protected LinearGradientMode lgm = LinearGradientMode.ForwardDiagonal;

protected Border3DStyle b3dstyle = Border3DStyle.Bump;

#endregion

#region GradientColorOne Properties

[

DefaultValue(typeof(Color),"White"),

Description("The first gradient color."),

Category("Appearance"),

]

//GradientColorOne Properties

public Color GradientColorOne

{

get

{

return gradientColorOne;

}

set

{

gradientColorOne = value;

Invalidate();

}

}

#endregion

#region GradientColorTwo Properties

[

DefaultValue(typeof(Color),"Blue"),

Description("The second gradient color."),

Category("Appearance"),

]

//GradientColorTwo Properties

public Color GradientColorTwo

{

get

{

return gradientColorTwo;

}

set

{

gradientColorTwo = value;

Invalidate();

}

}

#endregion

#region LinearGradientMode Properties

//LinearGradientMode Properties

[

DefaultValue(typeof(LinearGradientMode),"ForwardDiagonal"),

Description("Gradient Mode"),

Category("Appearance"),

]

public LinearGradientMode GradientMode

{

get

{

return lgm;

}

set

{

lgm = value;

Invalidate();

}

}

#endregion

#region Border3DStyle Properties

//Border3DStyle Properties

[

DefaultValue(typeof(Border3DStyle),"Bump"),

Description("BorderStyle"),

Category("Appearance"),

]

// hide BorderStyle inherited from the base class

new public Border3DStyle BorderStyle

{

get

{

return b3dstyle;

}

set

{

b3dstyle = value;

Invalidate();

}

}

#endregion

#region Removed Properties

// Remove BackColor Property

[

Browsable(false),

EditorBrowsable(EditorBrowsableState.Never)

]

public override System.Drawing.Color BackColor

{

get

{

return new System.Drawing.Color();

}

set {;}

}

#endregion

// protected override void OnPaint(System.Windows.Forms.PaintEventArgs e)

// {

// Graphics gfx = e.Graphics;

// //Border3DStyle b3dstyle = Border3DStyle.Bump;

// //Border3DSide b3dside = Border3DSide.All;

//

// Rectangle rect = new Rectangle (0,0,this.Width,this.Height);

//

// // Dispose of brush resources after use

// using (LinearGradientBrush lgb = new LinearGradientBrush(rect, gradientColorOne,gradientColorTwo,lgm))

// gfx.FillRectangle(lgb,rect);

//

// //3d border

// //ControlPaint.DrawBorder3D(gfx,rect,b3dstyle,b3dside);

//

//

// // Call the OnPaint method of the base class

// base.OnPaint(e);

//

// }

protected override void OnPaintBackground(System.Windows.Forms.PaintEventArgs pevent)

{

Graphics gfx = pevent.Graphics;

Rectangle rect = new Rectangle (0,0,this.Width,this.Height);

// Dispose of brush resources after use

using (LinearGradientBrush lgb = new LinearGradientBrush(rect, gradientColorOne,gradientColorTwo,lgm))

gfx.FillRectangle(lgb,rect);

ControlPaint.DrawBorder3D(gfx,rect,b3dstyle);

}

}

}

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
© 2005- 王朝网络 版权所有