所有,我已经超过了MDI WinForm应用程序的一半,并且已经开始在几台不同的机器上测试我们目前所拥有的内容,并且我在所有机器上都发现了以下错误(运行Windows 7 / Vista)。该错误与TaskBar及其中应用程序的可见活动状态有关。使用图片会更容易:
一个。我将鼠标悬停在准备启动的任务栏上。
B中。我点击应用程序,它没有启动任何问题,并在任务栏中显示 - 到目前为止一切都很好。
℃。等待大约三秒钟,图标逐渐消失,因此当我点击它时,它会启动我的应用程序的另一个实例,而不是恢复我刚刚打开的那个!一旦我点击表格并最小化然后恢复表格,这个问题就会消失!?
这很奇怪,我不知道如何修复它。当使用.exe文件启动应用程序时,这也会显示出来,在您单击应用程序主窗体之前,任务栏根本不会显示。我真的很难过。如果有人对这里可能发生的事情有任何想法,那将是最受欢迎的吗?谢谢你的时间。
请注意。我已将问题缩小到在其他开放表单后面启动的表单。我在表单this.TopLevel = true;
事件等中使用了相关选项Shown
,但似乎没有任何效果......
答案 0 :(得分:2)
我看到了一个类似的问题,即应用程序在首次启动时不会聚焦,并且在您单击它以激活主窗体之前不会显示在Windows 7任务栏中。
我永远无法追踪真正的原因,但将表单的Text属性的设置从OnLoad覆盖移动到构造函数使问题消失。非常奇怪,我仍然不知道为什么会发生这种情况。
不确定这是否适用于您,但我很想知道您是否也在构造函数之外设置Text。
答案 1 :(得分:2)
所有
通过添加
解决了这个问题this.Activate();
在主要表单的finally
块中(MDI父表单)Shown
事件。
感谢您的时间和帮助。