以编程方式选择节点后闪烁TreeView

时间:2013-07-29 12:46:49

标签: c# winforms treeview

我遇到了闪烁TreeView的问题。我希望在创建TreeView之后选择第一个节点。

tv.SelectedNode = tv.Nodes[0];

这设置了这个,但是首先点击程序中的任何节点使TreeView闪烁,之后一切都很好,在下次点击之后没有任何东西闪烁。 我在BeginUpdateEndUpdate上使用了MouseDownMouseUp,实际上它可以正常工作,但只有在第一次点击之后才能使用TreeView和{{1}}。如果没有以编程方式选择第一个节点作为选我不知道是什么让{{1}}眨眼。

提前致谢!欢呼声。

1 个答案:

答案 0 :(得分:0)

使用启用了双缓冲绘画的TreeView后代可以避免闪烁:

class DoubleBufferedTreeView : TreeView {
    public MyTreeView() {
        SetStyle(ControlStyles.AllPaintingInWmPaint | ControlStyles.OptimizedDoubleBuffer, true);
    }
}