TreeView や ListView のオーナードロー

Menu や ListBox は OwnerDraw できるのに TreeView や ListView はできない。Win32 の時代にはカスタムドローなる仕組みで実装できたのに不便だ。

同じことを思っている人はたくさんいるようで、The Code Project に記事が載っていた。現在は消されてしまっているようだけど、運良く web.archive.org に拾われていたのでリンクしておく。

いずれも、WndProc をオーバーライドして実現している。使っている技術は Win32 のテクニックそのままだ。ただし、GDI+ で描画できる分、ちょっとだけコーディングが楽な気はするが・・・。