我们正在开发一个内部使用的 WPF 4.0 应用程序。
在某些客户端上,由于 UI 自动化,我们遇到了巨大的性能问题(这些客户端安装了平板电脑服务笔、触控等软件)。
这是 WPF 4.0 的一个已知问题,例如:
我们已经能够在规格非常有限的机器上重现此问题。在这台机器上打开一个 WPF 窗口需要:
- 00:00:02 - 未安装任何 UI 自动化触发软件
- 00:01:41 - 安装了 UI 自动化触发软件(用于此测试的 RoboForm)
- 00:00:09 - 安装了 UI 自动化触发软件,并应用了修补程序 KB2484841
如您所见,安装修补程序 KB2484841 是一个巨大的改进,但仍然不如没有安装 ui 自动化触发软件的运行速度。
此外,我们对在客户端安装哪些软件没有太多控制权,因此很难为所有客户端推出此修复程序。
因此,是否可以“关闭”整个 WPF 应用程序的 UI 自动化?我知道它可以在每个 UserControl 的基础上完成,但整个应用程序是否可能?
我已经尝试过这篇文章中提供的代码,但没有成功。
谢谢你的时间,
科恩