我正在使用C#中的Windows Forms。
我有一个主窗体,其中包含一些包含toolStripButton的工具栏。在与包含数据的另一个窗体一起工作后,主窗体失去焦点,单击toolStripButton不会触发OnClick事件:第一次单击会激活主窗体,只有第二次单击才会实际按下按钮。我需要用户仅单击一次即可触发Click事件,您有任何想法吗?谢谢。
注:
- 我曾经使用MDI,单击父窗体按钮时没有问题。但现在最重要的是使窗体自由浮动跨越多个显示器。
- 工作窗体将主窗体设置为Owner属性,这样它们就会保持在主窗体的顶部。
- 当我单击非活动窗体的按钮时,MouseHover、MouseEnter、MouseDown和MouseUp都不会触发。只有主窗体的Activate事件会触发。
- 主窗体上有一个treeView(位于tabControl内,位于splitContainer内,位于面板内)。即使主窗体处于非活动状态,其项目也会在第一次鼠标单击时被选中。我猜并非所有控件都是相等的!