前提・実現したいこと
下記画像の[入力]のテキストボックスに値を入力し、ボタンを押下した際にサーバーに接続し各種情報を取得し[表示]のテキストボックスに表示、その後フォーカスを[入力]のテキストボックスに戻す、といった処理をたいです。
発生している問題・エラーメッセージ
基本的には問題なく動くのですが、たまにボタンにフォーカスが残ったままになります。
試してみたところ、マウスのクリックでは問題ないのですが、Enterキーを押下した場合のみ"たまに"フォーカスが戻りません。
さらに試しているうちにVisual Studioに表示されているデバッグのメッセージに下記のメッセージが出力されているときはフォーカスが戻らないことがわかりました。
例外がスローされました: 'System.ArgumentOutOfRangeException' (mscorlib.dll の中)
このメッセージはおそらく自分のアプリケーションから出しているものではないと思うのですが、いったい何が引っかかっているのでしょうか?
わかる方がいらっしゃいましたらお力添えをお願いいたします。
###追記
失礼しました。
環境などについては以下になります。
OS:Windows10
VisualStudio:2015
.netバージョン:4.8.03752
作っているのはWindows Formsになります。
データの取得ができなかったか遅れている場合にできたものとして扱っているからでしょうね。
何を作っているか(Windows Forms? WPF? その他?)と開発環境(OS, .NET Framework, Visual Studio のバージョンなど)は書けませんか?
ArgumentOutOfRangeExceptionが起こった時に止まるようにすればどこで発生しているか確認できませんかね?
赤の他人が作ったプログラムを、コードすら提示なしにそのまた赤の他人が再現するのは不可能です。
> このメッセージはおそらく自分のアプリケーションから出しているものではないと思うのですが
あなたのアプリケーションが出しているものです。
とりあえず、例外が発生している箇所でtry-catchで例外をキャッチし、デバッグ実行で例外オブジェクトのStackTraceを分析して例外の発生個所を特定したり、メソッドを呼び出している箇所の引数の値や戻り値などをチェックするなどして原因の絞り込みから始めればよいかと思います。
過去93個も質問書いてるのに質問するために何が必要なのか理解していないのはちょっとどうかと思う。
あなたの回答
tips
プレビュー