internal override void HandleClick (int clicks, MouseEventArgs me)
{
// MS seems to fire the click event in spite of the styles they set
bool click_set = GetStyle (ControlStyles.StandardClick);
bool doubleclick_set = GetStyle (ControlStyles.StandardDoubleClick);
// so explicitly set them to true first
SetStyle (ControlStyles.StandardClick | ControlStyles.StandardDoubleClick, true);
base.HandleClick (clicks, me);
// then revert to our previous state
if (!click_set)
SetStyle (ControlStyles.StandardClick, false);
if (!doubleclick_set)
SetStyle (ControlStyles.StandardDoubleClick, false);
}