我有一个用 c# 编写的 Internet Explorer Browser Helper Object (BHO),在不同的地方我打开表单作为模式对话框。有时这行得通,但在某些情况下却行不通。我目前可以复制的情况是 IE 正在运行 javascript 以打开其他子窗口......我想它在某个地方有点混乱......
问题是当我打电话时:
(new MyForm(someParam)).ShowDialog();
该表单不是模态的,因此我可以单击 IE 窗口并获得焦点。由于 IE 正在运行我的代码,因此它不会刷新,因此对用户来说,IE 似乎处于挂起状态。
有没有办法确保表单以模态方式打开,即表单不可能隐藏在 IE 窗口后面。
(我使用的是 IE7。)
注意:这是一个与这篇文章类似的问题,尽管它使用的是 java。我想解决方案是正确传递 IE 窗口的 IWin32Window ,所以我正在调查。