正如主题中已经提到的那样,我注意到 windows8 的行为与 windows7 不同,它们在控制一些主题化的东西方面。当我第一次在 windows8 中打开我的应用程序时,我注意到以下内容:
为组合框设置背景颜色对 windows8 没有影响,但对文本框效果很好。我必须覆盖组合框的整个控件模板,才能为某些组合框恢复我想要的颜色。
我在 Windows 8 上遇到的另一个问题是,默认情况下,我的文本框的所有内容都不再垂直居中,所有内容都与顶部对齐。在 windows7 中,所有内容默认垂直居中,无需设置 VerticalContentAlignment 属性。很高兴它不需要再次覆盖文本框的整个模板,就像之前组合框所要求的那样。将所有 tetxbox 的 VerticalContentAlignment 属性设置为“中心”。
到目前为止,我注意到的第三个问题是,我无法在大于 16x16 的 MenuItems 中显示图标。我所有的 MenuItems 都有一个 20x20 大小的图标,并且在 windows7 中显示良好。在 Windows8 中,我所有的图标都被裁剪为 16x16。
我使用了以下代码,在 Windows7 中运行良好:
<MenuItem Header="I'm a header">
<MenuItem.Icon>
<Image Source="Image.png" Height="20" Width="20" />
</MenuItem.Icon>
</MenuItem>
...但在 windows8 上没有。
我敢打赌这种类型的 windows8 上还有更多的小问题。
任何人都知道 Windows8 中这种行为的原因是什么?