高見知英のかいはつにっし(β)

高見知英のアプリケーション開発日誌 のほか、地域活動などの活動報告ブログ。

解き放たれよ、独自描画の世界へ

MSNメッセンジャーのメンバリストにわたしを加えている方はご存知かと思いますが、W-ZEROプログラミングコンテストとやらに挑戦しようかと思っています。いまからなのでちょっと時間ないですが。まあ、とりあえず「応募した」という記録くらいは作っておこうかな という程度です。


さて、それはいいとして。
.NET Compact Frameworkのリストボックスではオーナードローがサポートされていません。そのため、リストボックスをオーナードローするには自分でコントロールを作りリストボックス「っぽく」する必要がある。
そこでさすがMicrosoftさん、その辺は抜かりありません。

わたしには学がないですから――、この手の処理はなかなか思いつけないですね。ちょっと頭をひねれば簡単に独自描画のリストボックスが作れてしまうんだ と、感心しました。C#のListBoxItemCollectionはオブジェクト方の配列なので、別に問題ないですが、各オブジェクトにいろいろなデータ着けることで、とても簡単にいろんなデザインのリストボックスが描けてしまいますね。

このような手法を見ていると、システムの描画に頼ってばかりというのはいけないなあ と思います。もちろん不要なところはそれでぱっぱと済ませてしまって良いのでしょうが、使えるところでは積極的に。オーナードローを使っていきたいですね。
フレームワークを使ったプログラミングばっかりやってると、この辺の簡単な処理になかなか気づきにくくなってしまう。自分でも気をつけなければなりませんね。