|
|
1
1
一种选择是将多个更新批处理在一起,然后将它们批量发送到更新树。因此,解析文件并用每100个或某些节点更新树,而不是一次更新1个节点。 更新:在您的编辑添加批量节点后,我建议如下。
1-使用
|
|
2
1
首先要做的是在TreeView上启用双缓冲,这样它就会停止闪烁。从Vista开始就支持它,但不幸的是Windows窗体不支持它。向项目中添加一个新类并粘贴如下所示的代码。编译。将工具箱顶部的控件放到窗体上。
保持UI响应需要重新设计ParseFile()方法。如前所述,它调用BeginInvoke()的频率太高。这使得UI线程充斥着它无法跟上的请求。它不再逃避正常的职责,比如绘画和鼠标点击。 这是白费力气,人眼无法感知以每秒25次以上的速度发生的更新。将数据存储在一个集合中,开始遍历并以慢得多的速度传递该集合。 |
|
|
3
0
你试过吗
|
|
|
4
0
我没有用profiler运行您的代码,但是如果您认为慢I/O是botleneck,您可以试试 MemoryMappedFile from .NET 4.0 .
|
|
juergen d · WPF EventTrigger不总是触发 8 年前 |
|
|
Suresh · 如何访问TreeViewItem的子元素 8 年前 |
|
|
Awd · C#winform从自定义结构数组填充treeview 8 年前 |
|
|
jr13216 · 基于标记属性的WPF TreeView图像 8 年前 |
|
|
Egor Vasilyev · 带复选框的树 8 年前 |