メイン フォーム A とモーダル ダイアログ B があるとします。
B をスレッドから (invoke を使用して) モーダル ダイアログとして起動します。ダイアログは正しく表示され、親がフォーム A である ShowDialog(parent) を使用して起動されます。
B を閉じると、メイン ダイアログ A がマウス クリックなどのイベントに正しく応答しません。この問題は、次の状況でのみ再現されます。
- コードは .NET Framework 1.1 プロファイルを使用してコンパイルされます
- コードは Windows 7 x64 マシンで実行されます
ダイアログを閉じると、次の症状が発生します。
- フォーム A は一部のマウス クリックには応答しませんが、マウスの移動には応答します (マウスの移動でボタンが強調表示されます)。
- メイン ウィンドウの閉じるボタンは、マウス ホバー時に強調表示され、クリックすることもできますが、フォームは閉じられません。
- 新しいモーダル ダイアログはもはやモーダルではありません。
- プロパティ を持つダイアログ
StartPosition=CenterParent
は中央に配置されず、画面の左上隅に表示されます。
他のマシンで問題を再現できませんでした。また、.NET 2.0 以降を使用してコードをコンパイルすると、問題は再現されません。
この問題を解決するための提案はありますか? 私のアプリケーションには 1.1 が必要です。イベントキューを復元するために実行できる呼び出しはありますか?
前もって感謝します。