mutex跟你treeview有什么关系,那是线程同步用的,想treeview中添加节点时,把添加代码放到
treeView1.BeginUpdate();
treeView1.EndUpdate();
之间,可减少频繁添加引起的闪烁
其他你还可以看看怎样刷新,是需要全部刷新,还是可以刷新一小部分呢,比如告诉你只是某个节点内容变了,你可以先搜所,然后更替该节点内容
treeView1.BeginUpdate();
treeView1.EndUpdate();
之间,可减少频繁添加引起的闪烁
其他你还可以看看怎样刷新,是需要全部刷新,还是可以刷新一小部分呢,比如告诉你只是某个节点内容变了,你可以先搜所,然后更替该节点内容
解决方案 »
- <Select>赋值问题
- 进程异常控制,明天结贴,链接另一篇40分的0回复送分贴
- 关闭Form1时怎么执行Form2中的非静态方法?
- 请问HTML服务器控件和WEB控件的区别,及各自的用途?能混合用吗?
- 托盘菜单
- "WindowsApplication1.Class1”的类型初始值设定项引发异常。(各位大虾,帮忙看下.急~~~~~.在线等...........)
- 数据库操作 修改
- 用c#如何获取一个网页的"源文件"
- 动软的模版生成模式,求方法
- 搜索了一下,没有好的解决办法,一个窗体调用另外一个窗体中函数的问题
- C#能不能直接读取sqlserver备份的mdf文件的内容?
- 为什么组件突然不能在VS2008里显示按钮图片了呢?求高手指点!
我之前用过
treeView1.BeginUpdate();
treeView1.EndUpdate();
照闪不误啊~~
我已经说过了,节点什么时候修改,整个树有没有增删都是不确定的。这里的treeview显示的是服务器中的一些信息,修改都在服务器,服务器不会发送是否修改的消息,只能客户端向服务器获取整个树要显示的信息。
我是在程序里做了控制,有更改才刷新,没更改就不刷了。就是不用timer了,免得闪屏。
然后整个代码就变得复杂很多....
后来,很后来,我记得我在其他功能上用到了.net自带的一个异步多线程处理的一个控件,具体名字忘了。
这个控件解决了我另一处代码,卡屏的问题。但是我没回头来改这边这个treeview,也不知道是不是能解决这个问题。