我的一个同事刚来找我,有个有趣的问题。
他正在显示PowerShell脚本中的WinForms窗体,当窗体成功打开时,它无法获得焦点。相反,在显式单击窗体之前,PowerShell命令窗口将保持焦点。
正在使用\scriptname.ps1从PowerShell命令行运行脚本。
我们尝试了dlg.showDialog()(带和不带$this)、dlg.show()、dlg.focus()等各种组合,但没有成功。
有人知道如何在窗体显示时提供焦点吗?
这就是我们使它工作的方式(第一行是我们丢失的那一行):
$WinForm.Add_Shown({$WinForm.Activate()}) $WinForm.ShowDialog($this) | out-null