public class PrefixEventArgs:EventArgs{
public string Prefix;
public PrefixEventArgs(string prefix){Prefix=prefix;}
}
public delegate void PrefixChangeEventHandler(object sender,PrefixEventArgs e);
public event PrefixChangedEventHandler PrefixChanged;
public string Prefix{
get{return this.prefix;}
set{ this.prefix=value;
if(this.PrefixChanged!=null)
{ PrefixChanged(this,new PrefixEventArgs()value);}
this.Invalidate();
}
}
protected override void OnPaint(PaintEventArgs pe){
Graphics g=pe.Graphics;
using(Brush foreBrush=new SolidBrush(this.ForeColor))
using(Brush backBrush=new SolidBrush(this.BackColor))
{
g.FillEllipse(foreBrush,this.ClientRectangle);
StringFormat fmt=new StringFormat();
fmt.Alignment=StringAlignment.Center;
g.DrawString(this.prefix+this.Text,this.Font,backBrush,this.ClientRectangle,fmt);
}
base.OnPaint(pe);
}
默认的情况下,属性和事件都出现在"杂项"中