2012-03-01 46 views
5

我想在WPF中的DataGrid中加载10000个项目。当使用Window控件时,数据加载速度比使用Page控件时要快。有人能解释为什么吗?WPF中的页面和窗口之间是否存在加载速度差异?

+0

你为什么不创建一个简单的测试? – 2012-03-01 18:13:59

+0

我想你可以使用分析工具(dotTrace或ANTS)来查看发生了什么以及是什么导致了这种差异。 – pguzewicz 2012-03-01 19:57:51

+0

你需要编辑或添加?如果不是的话,你会用ListView GridView获得更好的性能。我会审查代码,看看有没有什么不同。 – Paparazzi 2012-03-04 20:49:00

回答

1

该页面旨在用于导航应用程序(通常使用 后退和前进按钮,例如Internet Explorer)。页面必须 托管在NavigationWindow或框架

的Windows只是正常的WPF应用程序在Windows [lnk]

这本质上是一种XBAP vs ClickOnce问题。页面中的任何内容都是由WPF被允许在浏览器窗口中进行编译和限制的。这排除了很多低级别的计算机操作,WPF Windows可以避免使用它们,因为它们被编译为从桌面运行。 Window应用程序可以完全访问系统资源。

请记住,即使在调试期间使用页面控件时,生成的代码也是在浏览器部署的基础上构建的。所有XBAP都在部分信任的限制性安全沙箱中运行。换句话说,他们被允许使用某些.NET库,但被禁止访问其他人。 [ref]其中一些.NET库将负责优化,因此无法在浏览器部署中实现。

因此,在Windows中构建的应用程序能够比页面中构建的应用程序更快地执行大多数操作是非常有意义的。

相关问题