在ViewBox中缩放ComboBox弹出窗口

我正在开发一个UWP App,并且注意到将ComboBox元素(只是弹出窗口)放置在ViewBox中时缩放不正确。外观如下:

在ViewBox中缩放ComboBox弹出窗口

此外,由于ComboBox检测似乎偏离了鼠标的实际位置,因此选择了错误的元素。 ComboBox放置在网格内其他元素的旁边(网格是ViewBox的直接子元素)。其他所有东西都可以正常工作,并且可以伸缩而不会拉伸。

在保留ViewBox的同时,有什么方法可以解决此问题? 预先感谢!

编辑:

    <Viewbox>
        <Grid Width="1920" Height="1280" HorizontalAlignment="Center">
            <ComboBox HorizontalAlignment="Center" VerticalAlignment="Center" Width="200" Height="50">
                <ComboBoxItem Content="Test123"></ComboBoxItem>
                <ComboBoxItem Content="Test456"></ComboBoxItem>
                <ComboBoxItem Content="Test789"></ComboBoxItem>
            </ComboBox>
        </Grid>
    </Viewbox>

这几乎是我要做的所有事情,我需要调整应用程序的大小并仅支持特定的分辨率(1920x1280)。但是,它必须以某种方式适应于所有可能的Windows缩放设置。

hzhdestiny 回答:在ViewBox中缩放ComboBox弹出窗口

它是Windows团队最近推出的seems to be a bug。链接文章中建议的解决方法之一是在ViewBox上添加不可见的旋转:

<Viewbox>
    <Viewbox.RenderTransform>
        <RotateTransform Angle="0.001"></RotateTransform>
    </Viewbox.RenderTransform>
    <Grid Width="1920" Height="1280" HorizontalAlignment="Center">
        <ComboBox HorizontalAlignment="Center" VerticalAlignment="Center" Width="200" Height="50">
            <ComboBoxItem Content="Test123"></ComboBoxItem>
            <ComboBoxItem Content="Test456"></ComboBoxItem>
            <ComboBoxItem Content="Test789"></ComboBoxItem>
        </ComboBox>
    </Grid>
</Viewbox>

这确实令人作呕,这就是Microsoft建议遵循this guide查找替代性想法的原因(没有ViewBox不应被用来保持应用程序的响应速度)。

本文链接:https://www.f2er.com/3148959.html

大家都在问