一开雹磨始我以为是渲染数据慢,后来我什么数据也不加载,就放一个空的GridControl,也需姚3秒钟左右。
而旁边的微软自带的DataGrid则是秒开。
查了很多资料,都说是WPF第一次加载控件,VisualTree需要加载资源,所以很慢,
第二次就会快很多。这个devexpress也解决不了。只能变通的选种方式解决。
就是在程序启动前,显示一个SplashScreen,将GridControl放在SplashScreen中,这样,之后,我们需要显示带有GridControl的窗体时,就会快很多。
经过测试,现在打开dev的窗体,一秒钟不到。
确实是有效果的。
winform还存在仅剩的五条理由:对于够用党来说winform够用了
winform上手肯定比wpf简单
wpf刚出来的时候启动速度太慢,企业还是以winform为主(256M内存,XP时代)
然后桌面项目就没落了,wpf不跨平台不开源,wpf没有出手大型软件的机会,现在开源了也没跨平台。
wpf创建控件的速度还是比winform慢一点,有些情况下还是有winform比wpf快的感觉
但是在我所在的工控编程领域,我还是推wpf多,有很多方面,比如这个领域小动画很多,比如管子孙昌要有蚂蚁线动画,表达有东西在流动,十几个蚂蚁线就能让winform卡的10帧都不一定有。比如很需要line chart曲线图折线图,不断地更新,还需要平移缩放 *** 作等,winform的渲染性能太差,承载能力低。而wpf的渲染性能足够好,导致渲染性能不是瓶颈,动画可以做到流畅的60帧,当然我们群里也有人不服说工控软件要这么流畅干嘛,我会把我使用一个性能非常好的chart示例视频给他看,让他们看看威力,这个优秀体验是软件实力的彰显,其实只是用了好用的控件。WPF也更擅长无损图形和3D,这样可以借svg,autocad和solidworks的东西做成自己需要的界面,无损平面转xaml的Shapes,sw中提取简单的3d图直接可以导出xaml,方便控制动画和颜色,做出更加好的效果动画,方便程度远超qt到web的各种。
winform也有控件使用sharpdx来渲染加速,但是如果各个控件都用sharpdx的话,他们用的版本通常都是不同的,那么就只有一个控件能用上sharpdx了。所以wpf的渲染速度底则枯扒子还是很重要的,不要总是麻烦sharpdx嘛。
当然,wpf你入门以后败兆会发现开发其实比winform简单好用,画一些工控需要的乱七八糟的东西也方便,所以wpf是肯定优于winform的。但是现在桌面客户端领域里要把软件做大的少。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)