MenuStrip需要双击时

时间:2013-10-15 13:55:19

标签: c# winforms

我的Win Forms应用程序:

我的WinForms应用程序有两种形式。 Form1有一个打开Form2的按钮,两个表单都有自己独立的MenuStrip。

复制场景:

表格开始,一切正常。 MenuStrip只需单击一下即可显示其基础MenuStripItem。 打开第二个表单时,该表单上的所有内容也只需单击即可。 关闭第二个表单并单击第一个表单的MenuStrip后,没有任何反应。 需要第二次单击才能打开MenuStrip。 此外,打开第二个表单时,以下单击MenuStrip不会执行任何操作。 再次需要第二次单击才能打开MenuStrip。 请注意,每次显示时都会构建第二个表单。

到目前为止,我已经尝试过:

  • 一旦第二张表格关闭(没有工作),将焦点设置(使用Focus()和Activate())到MenuStrip
  • 创建我自己的MenuStrip并重载WndProc,OnClick,OnVisible等以设置焦点(没有工作)并模拟第二个OnClick(没有工作)。

我也不认为它与焦点有关,因为在点击之前Focused属性为true时问题仍然存在。

这个问题的另一个方面是,当我在Windows 7/8上运行我的应用程序时,它似乎完美无缺。 在Windows Server 2008 R2上运行应用程序时,MenuStrips总是需要在第二次显示表单时双击。 两台机器都使用.NET framework 4.5

0 个答案:

没有答案