2016-08-09 14 views
-1

我使用的一个WPF应用程序,其中应用内在张力结构就像Window.Activated事件是如何触发的?

  1. EXE1使用WaitForExit方法启动EXE2。
  2. 然后Exe2的主窗口1启动Window2,拥有Window1的所有者窗口。
  3. 最后,Window1使用System.Diagnostics.Process启动一个新的外部Exe3。

正常情况下,当我关闭一个Exe3时,Windows2被启动,这是一个理想的情况。
但在某些情况下,当我关闭外部Exe3时,Exe1被激活。所以Exe2正在倒退,这是一个问题。

请提供您的输入为什么Exe1偷窃重点。
在此先感谢您的宝贵答案。

+0

您的意思是,当您关闭Exe2时,Window1有时会激活? – SpaceghostAli

+0

你可以指定你是哪个作者/可以修改的exes吗? –

+0

嗨SpaceghostAli,当我关闭Exe3时Exe1被激活。 –

回答

0

当关闭Windows时,要激活的下一个Window取决于之前激活的最后一个Window。如果您点击“替代选项卡”,则会看到订单,但如果您需要特定的Window,以便在关闭另一次尝试后通过参考该Window始终激活,因此您可以在第一个Window正在关闭时调用Activate方法。

+0

非常感谢您的评论。通过使用Window.Activate()方法,它工作正常。但在我的错误情况下,Window2在启动Exe3之前处于活动状态,但在关闭Exe3之后,Window2没有获得Activate命令。 –