2009-03-31 6 views
3

Я поддерживаю приложение с сенсорным экраном, которое я переписываю в .Net. На протяжении многих лет разрешение сенсорных экранов значительно увеличилось. Мало того, что разрешение выше, но пиксели также намного плотнее, что затрудняет просмотр/управление сенсорными кнопками.WPF Resize Windows

Есть ли способ с WPF заставить окна приложений увеличивать масштаб при изменении плотности разрешений/пикселей? Я бы предпочел не переделывать эти экраны каждые несколько лет.

ответ

5

Да, есть.

Вы можете обернуть контейнер контейнером ViewBox WPF. Здесь идет пример:

<Window x:Class="TestWPF.Window1" 
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
    Title="Window1" Height="300" Width="300"> 

    <Viewbox Stretch="Uniform"> 
     <StackPanel Background="Azure" Height="400" Width="300" Name="stackPanel1" VerticalAlignment="Top"> 
      <Button Name="testBtn" Width="200" Height="50"> 
       <TextBlock>Test</TextBlock> 
      </Button> 
     </StackPanel> 
    </Viewbox> 

</Window> 

Скриншот: enter image description here

Consult this topic для получения дополнительной информации.

+0

Примечание. В окне «Просмотр» не применяются растягивающиеся компоненты для холста. – Jeff

1

Это поведение по умолчанию, каждый пиксель WPF составляет 1/96 дюйма, а не фактический пиксель (теперь единственная проблема заключается в том, что практически все экраны установлены на 96DPI независимо от фактического разрешения экрана).

 Смежные вопросы

  • Нет связанных вопросов^_^