C# で記述された Internet Explorer ブラウザー ヘルパー オブジェクト (BHO) があり、さまざまな場所でモーダル ダイアログとしてフォームを開きます。これは機能する場合もありますが、機能しない場合もあります。私が現在再現できるケースは、IEがjavascriptを実行して他の子ウィンドウを開く場合です...どこかで少し混乱していると思います....
問題は、私が呼び出すときです:
(new MyForm(someParam)).ShowDialog();
フォームはモーダルではないので、IE ウィンドウをクリックしてフォーカスを得ることができます。IE はコードの実行中に更新されないため、ユーザーには IE がハングしているように見えます。
フォームがモーダルとして開かれるようにする方法はありますか。つまり、フォームを IE ウィンドウの後ろに隠すことはできません。
(私はIE7を使用しています。)
注意: Java を使用していますが、これはこの投稿と同様の質問です。解決策は、IEウィンドウのIWin32Windowを正しく渡すことだと思いますので、それを調べています。