プログラムとかデジタル系趣味とか

TreeViewのNodeを扱い方コツ(MFCとWindoes Formsで違う)

f:id:misakichi-k:20210903220237p:plain
あくまで、私の方法ですけども。
TreeView使うときの参考になれば、いいなあ。
MFCのTreeNodeだとHTREEITEM毎に、ItemDataに対して関連付けたい情報へのポインタとか入れます。
もしくはstd::map とするか。
でもこれだと、情報が別れてしまって実は好きではなかったです。

一方、.Netだと、項目はTreeViewNodeクラスとなっています。
Tagプロパティにデータ入れたり、同じようにmapの代わりにDictionaryでやることもできます。
でも私はTreeVireNodeを継承してしまってそのクラスで扱います。

実際のノードに、全部データも処理も入れることができるので便利です。
それぞれのノードによって持つデータや処理が違っても、違うクラスにすれば良い。

個人的には、今のところ、この方法ががベストアンサー。