2009-10-14 1 views
0

항목에 "checked/unchecked"상태가 표시 될 수 있도록 TreeNode 텍스트 근처에 사용자 정의 아이콘을 추가하려고합니다. 나는 그것을 위해 체크 박스를 사용하고 싶지 않다.사용자 정의 그리기 TreeNode가있는 TreeView

아이디어가 있으십니까? 감사합니다.

+1

어떤 언어를 사용하고 있습니까 – junmats

+2

그리고 어떤 GUI 프레임 워크/툴킷입니까? 두 가지 모두 C#을 사용할 수 있지만 Winforms는 WPF와 매우 다릅니다. – Joey

답변

4

.net 및 Windows Forms를 사용한다고 가정합니다.

TreeView의 DrawMode 속성을 TreeViewDrawMode.OwnerDrawAll로 설정해야합니다. 이렇게하면 treeview의 DrawNode 이벤트는 트리 노드가 그려 질 때마다 실행됩니다. 해당 이벤트를 처리하고 항목을 수동으로 그립니다.

이벤트 인수로 DrawTreeNodeEventArgs가 표시됩니다. State 속성을 사용하면 트리 항목의 어떤 상태를 그려야하는지 알 수 있습니다. e.Bounds는 범위를 결정하는 데 도움이되며 e.Graphics를 사용하여 그림을 그릴 수 있습니다. 여기에서 자세한 정보를 확인할 수 있습니다

http://msdn.microsoft.com/en-us/library/system.windows.forms.treeview.drawnode.aspx

그러나 여러 시간을 투자 할 준비를합니다.