3
我目前正在开发一个将利用现有的WinForm对话框的WPF应用程序。我在WinForm上调用ShowDialog()
到显示时间之间有很长时间的滞后。从WPF应用程序显示WinForm对话框的性能问题
即使重复使用WinForm对话框对象,第二次命中时的延迟时间也几乎一样。这意味着问题不在构造函数中。
有没有人有办法提高速度或知道为什么速度如此之慢?
我目前正在开发一个将利用现有的WinForm对话框的WPF应用程序。我在WinForm上调用ShowDialog()
到显示时间之间有很长时间的滞后。从WPF应用程序显示WinForm对话框的性能问题
即使重复使用WinForm对话框对象,第二次命中时的延迟时间也几乎一样。这意味着问题不在构造函数中。
有没有人有办法提高速度或知道为什么速度如此之慢?
在我的机器上使用空白WPF应用程序和空表单对话框进行的快速测试表明,最大延迟来自Win7执行的“打开窗口”动画。所以我认为在WPF-Forms互操作中没有内在的性能问题。相反,我们可能错过了关于对话的关键实现细节。
Load
和FormShown
事件中的对话?也许你正在使用继承,并且违规代码在层次结构中进一步下降了?你最好打赌的可能是使用探查器找出时间实际花在哪里。
'长'多久?它在Load事件处理程序中做了什么? – 2010-08-20 17:22:36
这两个范围取决于使用哪个对话框。长时间保持3秒左右,空白对话框。在一个8秒钟的实例中,如果从WinForms应用程序运行,其初始命中不到2秒,然后立即显示子序列。 – 2010-08-20 17:29:51