MultiLayoutなる伝票入力用のセルや編集コントロールを用意するところまでは、これまでの記事にて色々書いてきたのである程度のイメージはついていると思う。
ここまでやってくると次に出てくる問題は、
「セルをクリックした際にその直下のコントロールへとフォーカスしてほしい」
というところにきてしまうんだよねぇ。使ってみると当然そう思うんだけど。
というのもDataGridViewの仕組み上、セルにフォーカスが移るけどその中のフォーカス制御なんてものは当然やるわけがないからなんだよね。いや、もともとここまでの使い方しようなんて酔狂は少ないから当然なんだけどねw
ここまでやる前にサードパーティ製品を探すからw
でもそこは、あえてDataGridViewでがんばってしまうのがこのサイト。
け、決して貧乏だからとかじゃないんだからね!
某社の製品購入したはいいけど遅かったからやめた、なんてこともないんだからね!
くだらないやりとりはおいといて、この問題を解決するにはHitTesと呼ばれるものを利用する必要がある。
まー、DragDropとかでも利用しているんでたいした話じゃーないけどね。
要は、セルがクリックされた際の座標を編集コントロールにも伝えてあげればいい、というだけだから。
ということで具体的なことは次からの記事で書いていきます。
0 件のコメント:
コメントを投稿