0

我有一个后台工作人员,我用它来填充我的 TreeView 绑定到的集合。在后台工作程序运行时,我让 GUI 显示一个进度对话框。我在后台工作人员的 RunWorkerCompleted 事件中关闭了进度对话框。这一切都很好,正如预期的那样。

问题是,在进度对话框关闭后,TreeView 通常仍需要一段时间才能更新。有时,已将大量数据添加到 TreeView,因此刷新可能需要 10 秒左右。这会导致用户感到沮丧和困惑。

  • 为什么 TreeView 刷新需要这么长时间?
  • 有没有办法加快速度?
  • 或者要知道刷新/重绘何时完成,以便我可以关闭进度对话框,而不是在我的后台工作人员完成时?

更新:我打开了虚拟化。

4

1 回答 1

0

您是否尝试过性能分析您的应用程序?有几个工具可以帮助您做到这一点。他们将让您查看为您的更新过程调用了哪些方法,并且您可能能够发现一些仍在执行更新过程的代码。

链接 http://www.red-gate.com/products/dotnet-development/ants-performance-profiler/

http://www.yourkit.com/

http://www.jetbrains.com/profiler/

于 2012-05-04T10:09:19.007 回答