如何使用OnPaint args在c#中向TreeView控件添加图标

时间:2011-08-30 21:17:46

标签: c# treeview onpaint

如何在c#中添加图标到TreeView控件而没有ImageList控件?我认为你需要调用OnPaint事件args但不知道如何去做。

3 个答案:

答案 0 :(得分:3)

哟必须编码OwnerDraw控件。除非你没有非常严重的原因,否则请避免这种情况,因为如果你想以一种好的方式做到这一点,这可能会变成非常复杂的情况。

看看这个例子。

DrawNode event

答案 1 :(得分:2)

您可以覆盖OnDrawNode()并将DrawMode设置为TreeViewDrawMode.OwnerDrawAll。但是,您很快就会意识到,模拟默认树视图的确切行为几乎是不可能的。有一些国家由控制权保密,你不能在没有大量摆弄的情况下进入。

例如,在标准树视图控件上,在节点上按下鼠标按钮而不释放它将在树视图控件选择注册之前将节点显示为已选中。尝试使用所有者绘制的节点来模拟它是非常困难的,并且基本上需要您重新实现整个事物。

答案 2 :(得分:1)