業務系のアプリで必ずと言っていいほど出てくるこの話。そのため、色々なサイトでこれに対するロジックが公表されているんだけど。
SelectNextControlメソッドでは対応できないケースの方が多いんだけど、それでもどうしてそういったサンプルが多いんだろう。理由も簡単で、DataGridViewやその他グリッドなコントロールが絡むとほぼ間違いなく、Enterで次のセルへ移動してほしい、という話もでるだろうから。
だから業務としてはProcessDialogKeyとかそのあたりのメソッドをオーバーライドするのが最もいいのだろうけど・・・利用するコントロールによっては、コントロール側で制御を行う必要があるんだよねぇ(DataGridViewもそう)。
Form側で統一したロジックにしようとすると、こういった問題がでるので各種コントロール側でキー制御を行う、というのが今のところ最もスマートな方法かもしれないね。
0 件のコメント:
コメントを投稿