評価
良い / 悪い = 40 / 8 (「良い」の割合 = 0.833 , 人気度 = 1.400 )
評価する
- 人を不快にさせる内容の投稿は絶対にしないでください。悪質な投稿者には、予告なく罰則(閲覧禁止やIP公開等)を科します。
- この記事だけでない、全般的なご提案は「DOBON.NETへの提案」に、ご意見は「お気楽掲示板」に投稿してください。
- 5文字以上、1000文字以下のコメントしか投稿できません。
- HTMLタグは使用できません。
Copyright(C) DOBON!. All rights reserved.
発見者 2019/11/28 (Thu) 13:24:08
一方GotFocus、LostFocusは発生するのだが、単にGotFocus、LostFocusを使うのではまだ問題がある。
まず、初回のGotFocusコールでtextBoxを操作(背景色を変えるとか)しようとすると、ハンドル生成中のWin32例外がでてしまう。
GotFocusはフラグ等で初回は無視し二回目以降を使い、初回については初回だけ呼ばれるEnterを使うといことをしていたが、
残る問題として、Enter、Leave、Validating、Validatedが依然として発生しないままで、カスタムToolStripのtextBoxを外部から使う際に使いづらい。
悩んだ末のベストな解決策は、カスタムToolStrip内にFocusを持てるダミーコントロールを用意し、LostFocus内ではダミーコントロールにFocusを移す処理のみ行う。
すると引き続きLeaveが発生するし、次回のEnter、Leaveも発生する。ValidatingやValidatedも発生するようになる。