我读过WPF在底层使用DirectX来执行其渲染,它不依赖于WinForms用于呈现控件的恐龙库。为什么WPF在不同版本的Windows上呈现不同?
因此,我使用WPF制作了我的Presentation层,它看起来应该在Win8下应用。
然后,我将项目部署到Windows Server 2003 ...以发现我的漂亮的小自定义消息框看起来非常像WinForms,有点笨重;按钮控件与WinForms控件非常相似,扩展控件不再显示为带圆圈的^
箭头,并且看起来像是1998年绘制的(当您的鼠标悬停在屏幕上时,会弹出一个丑陋的方形平面按钮上的^
箭头图片它)。
从临WPF在C#2010圣经:WPF的承诺
部分是,你并不需要担心特定硬件的细节和特性。 WPF足够智能,可以尽可能地使用硬件优化,但它有一个软件后备的一切。 因此,如果您在具有旧版视频卡的计算机上运行WPF应用程序,该界面仍将以您设计它的方式出现。
那么,这是谎言吗?对我来说它是,因为它不会出现我设计它的方式。
如果不是这样,那么为什么/不管这台机器运行它的时候,该物体的渲染效果如何? 软件后备设计模仿Win32/GDI渲染?有没有办法让我的小自定义消息框在Win8和WinServer2K3上看起来完全相同?
这可能是与实际的视频支持,winserver有问题。 Ala如果你有一个半透明的背景我不相信winserver甚至有能力做到这一点。 – Nomad101 2013-05-01 19:48:48
+1只适用于“恐龙winforms”。 – 2013-05-01 19:57:32