为什么
WPF在
Windows XP和
Windows 7上渲染不同?
我在两台电脑上都使用.NET SP1
我的布局就像这个没有工具栏的窗口,设置为最大化,因此它适合整个屏幕.
在这之下,我有一个ViewBox设置为使用Stretch:Uniform,而在那里我有我的LayoutRoot.
这样我希望在所有的计算机上得到相同的布局,但它似乎在Windows XP上不能完全相同.一些项目有点小,布局看起来不是很好.
我已经尝试将我的Windows 7计算机上的重新调整与Windows XP计算机相同,并且保持布局.
两台电脑都使用96 DPI.
我的经验:
我不知道是否是这个问题,我注意到Windows 7使用硬件加速来绘制WPF应用程序. Windows XP没有.
你可以通过使用这样的方式来检查是否是这样的:
public partial class App { public static int Tier { get { return RenderCapability.Tier >> 16; } } static App() { Console.Out.WriteLine("Render Tier: {0}",Tier); } }
如果使用完整的硬件加速绘图,您的渲染层应该返回2. 0 =软件,1 =如果猜到中间的东西