Масштабирование ComboBox Всплывающее окно внутри ViewBox - PullRequest
1 голос
/ 07 ноября 2019

Я занимаюсь разработкой приложения UWP и заметил, что элементы ComboBox (только всплывающие окна) неправильно масштабируются при размещении внутри ViewBox. Вот как это выглядит:

enter image description here

Кроме того, выбраны неправильные элементы, поскольку обнаружение 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.

1 Ответ

0 голосов
/ 07 ноября 2019

Это , похоже, ошибка , недавно представленная командой Windows. Одним из предложенных исправлений в связанном посте является добавление невидимого поворота на 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 рекомендует следовать этому руководству , чтобы найтиальтернативные идеи (без ViewBox, который не должен использоваться для обеспечения отзывчивости приложения).

...