Thorin Oakenshield
Thorin Oakenshield

Reputation: 14692

How to bypass the enter/leave event in c sharp

I'm having a Picture box in a user control window(Windows custom control library). and some functionality in the Form's Enter event and leave event.

Now my sample application is having two instances of the control. So when i run my sample application the fist control got selected and the enter event is triggered, and when i select the second control the first's leave and second's enter events are getting triggered.

Now, problem is that when i select(click) the second control's picturebox, the events are not triggering, i.e the control form is not getting the event.

So if i click whereever in the control(in the picturebox or in the control) the enter event should be triggered.

How to do this?

Upvotes: 0

Views: 511

Answers (1)

CodesInChaos
CodesInChaos

Reputation: 108880

A picture box can't get focus. So clicking on it won't take the focus away from the previous control thus not triggering the events.

You need to add a click handler on the picture box in which you manually give focus to the associated focusable control.

private void PictureBox_Click(object sender, EventArgs e)
{
    focusableControl.Focus();
}

Upvotes: 2

Related Questions