Я использую Windows Forms на C #.
У меня есть основная форма с парой панелей инструментов, содержащих toolStripButtons. После работы с другой формой, содержащей данные, основная форма теряет фокус, и нажатие на toolStripButton не вызывает событие OnClick: первый щелчок активирует основную форму, и только второй щелчок фактически нажимает кнопку. Мне нужно, чтобы пользователь нажал кнопку только один раз, чтобы вызвать событие Click, есть идеи, как это сделать? Спасибо.
Примечания:
- Я использовал MDI, и при нажатии на кнопки родительской формы проблем не возникало. Но сейчас главное - чтобы формы свободно перемещались по нескольким дисплеям.
- Рабочие формы имеют основную форму как свойство Owner, таким образом, они остаются поверх основной формы.
- Когда я нажимаю кнопку неактивной формы, ни один из MouseHover, MouseEnter, MouseDown или MouseUp не срабатывает. Срабатывает просто событие Activate главной формы.
- В основной форме есть treeView (внутри tabControl, внутри splitContainer, внутри панели). Его элементы выбираются при первом щелчке мышью, даже если основная форма неактивна. Думаю, не все элементы управления одинаковы!