protected override void OnMouseDown(MouseEventArgs e)
 {
     base.OnMouseDown(e);
     State = MouseStateThunder.Down;
     Invalidate();
 }
 protected override void OnMouseEnter(EventArgs e)
 {
     base.OnMouseEnter(e);
     State = MouseStateThunder.Over;
     Invalidate();
 }
 protected override void OnMouseLeave(EventArgs e)
 {
     base.OnMouseLeave(e);
     State = MouseStateThunder.None;
     Invalidate();
 }