我不想在这个问题上花费更多时间,但如果您有兴趣阅读它并知道答案,请回复。提前致谢。
我有一个 Windows 窗体应用程序,它以最小化模式启动另一个 Windows 窗体应用程序,并将 ShowInTaskbar 设置为 False。第一个应用程序有一个显示按钮,该按钮使用以下方法显示另一个应用程序。
ShowWindow(WindowHandle, ShowWindowCommands.Normal)
SetForegroundWindow(WindowHandle)
我在第二个应用程序中使用激活事件在激活时刷新其表单。问题是,在激活表单时,activate 事件通常不会触发。显示隐藏表单并激活,但未调用激活事件处理程序。第一个应用程序是一个 MDI 应用程序,但我不明白这会是一个因素。
第二个表单上有一个按钮可以隐藏它。此按钮仅调用表单的 Hide 方法,不会最小化表单。下次在第一个应用程序上按下 Show 按钮时,将为第二个应用程序触发 activate 事件。将第二个应用程序的 ShowInTask 栏设置为 True 没有帮助。最小化而不是隐藏窗口不会阻止在第二次激活应用程序时触发 Activate 事件。