ImageListコントロールなしでc#のTreeViewコントロールにアイコンを追加するにはどうすればよいですか?OnPaintイベント引数を呼び出す必要があると思いますが、その方法がわかりません。
2456 次
3 に答える
3
あなたはOwnerDrawコントロールをコーディングする必要があります。本当に深刻な理由がない限り、これは避けてください。良い方法でやりたい場合は、非常に複雑なシナリオになる可能性があります。
この例を見てください。
于 2011-08-30T21:22:54.273 に答える
2
オーバーライドOnDrawNode()
してに設定DrawMode
できますTreeViewDrawMode.OwnerDrawAll
。ただし、デフォルトのツリービューの正確な動作をエミュレートすることはほとんど不可能であることがすぐにわかります。コントロールによって非公開にされている状態がいくつかあり、多くの手間をかけずにアクセスすることはできません。
たとえば、標準のツリービューコントロールでは、ノードを離さずにマウスボタンを押すと、ツリービューコントロールによって選択されたものとして登録される前に、ノードが選択されたものとして表示されます。所有者が描画したノードを使用することは非常に困難であり、基本的にすべてを再実装する必要があることをエミュレートしようとします。
于 2011-08-30T21:26:26.153 に答える
1
TreeViewのノード所有者の描画を行う方法には多くの例があります。
C#:TreeViewの所有者がownerdrawtextを使用して描画し、ノードをクリックすると奇妙な黒が強調表示されます
于 2011-08-30T21:23:29.417 に答える