为什么我的Windows 8 WPF单选按钮完全没问题?

时间:2012-08-16 06:38:20

标签: wpf windows-8

在带有VS2012 RTM的Windows 8 RTM中,我注意到我的WPF应用程序给了我变形的单选按钮,所以我决定创建一个示例来查看我是否做错了。

以下是整个XAML应用程序:

<Window x:Class="WpfApplication1.MainWindow" 
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="MainWindow" SizeToContent="WidthAndHeight">
    <Grid>
        <StackPanel Margin="20">
            <RadioButton Content="Option 1" GroupName="1"/>
            <RadioButton Content="Option 2" GroupName="2"/>
            <RadioButton Content="Option 3" GroupName="3"/>
        </StackPanel>
    </Grid>
</Window>

这里我将DPI设置设置为100%,这实际上不是Windows 8中的默认设置(至少我的1920x1200屏幕不是这样)。你会看到单选按钮是完美的。

enter image description here

这与DPI设置相同的应用程序为125%,这是我的屏幕分辨率的默认DPI。

enter image description here

这是150%

enter image description here

您可以看到内圈不在外圈中居中,看起来很可怕。带有单选按钮的系统应用程序很好 - 但我的WPF 4.5应用程序不是。这个示例应用程序再一次是100%RTM位,在Win 8下从头开始。

它是否全部被打破或者是否有办法解决这个问题(除了坚持让人们进行100%DPI缩放)。

真的希望Win8能够在高分辨率屏幕和缩放问题方面走得很远,但是开箱即用的东西很简单: - (


编辑:提交连接错误https://connect.microsoft.com/VisualStudio/feedback/details/758368/radio-button-rendering-is-incorrect-on-windows-8-with-125-dpi-scaling-set

编辑:2012年8月29日:

  

WPF团队最近审核了这个问题,但不会   解决这个问题,因为此时团队正在关注这些问题   影响最多的WPF开发人员。如果你相信   这是错误解决,请重新激活任何错误   必要的支持细节。

2 个答案:

答案 0 :(得分:1)

WPF中的所有内容都是样式化的。在默认系统样式的情况下,根据我自己的经验,他们有时会遇到这样的问题。一个简单的修复,确认它是风格,而不是操作系统本身是自己重新设置控件,看看是否修复它。

您可以通过查看this问题找到原始样式。这些将帮助您重建和/或解决问题

答案 1 :(得分:0)

您可以尝试将堆叠面板放在视图框中。也许