奇妙な問題が発生しています。私はC#.NET 2.0アプリケーションとコンテキストメニューを持っています。アプリケーションを右クリックすると、コンテキストメニューが表示され、メニューの項目の1つが「オプション」になります。オプションをクリックすると、ShowDialog()メソッドを使用して表示されるOptionsDialogフォームが表示されます。問題は、Windows XPでは、フォーカスが消えていくことです。オプションフォームをクリックすると、1秒間フォーカスが得られますが、もう一度それを失います!私はすべてを試しました。 Deactivateイベントではthis.Focus()を呼び出しますが、違いはありません。ウィンドウを一番上にしてみましたが、まだ動作しません。ダイアログボックスがWindows XPでフォーカスを失う
もう1つの厄介なことは、この問題はXPでしか起こらないようだということです。私はVistaとWindows 7でそれを試して、それは完璧に動作します。 XPは何か面白いことをやっている。誰でもこれを解決する方法について考えている?ここ
あなたは別のXPマシンで試したことがありますか? – Stu
はい。私は自分のアプリケーションをテストするためにVMWareを使います。私は2つの別々のXPイメージをテストに使用しなければならず、どちらも同じような動作をします。 – Icemanind
Spy ++を使用してWindowsメッセージを表示しようとしましたか?あなたはどのスレッドがフォーカスを引っ張っているのかを知ることができるはずです –