WPF屏幕解析问题

时间:2016-03-18 02:40:33

标签: c# wpf wpf-controls

我们的wpf窗口应用程序最适合分辨率为1920 * 1080.但我们无法在所有机器中获得相同的分辨率。大多数人仍然使用低分辨率。

现在低分辨率的机器我们的应用程序有很多滚动条。我的问题是没有任何滚动条,可以根据机器分辨率放大/缩小Wpf应用程序。

2 个答案:

答案 0 :(得分:0)

使用具有相对列宽和行高的网格控件是解决方案。这样控制宽度和高度可以是灵活的。您可以使用VerticalAlignment =“Stretch”和Horizo​​ntalAlignment =“Stretch”代替使用固定宽度和高度,这基本上使控件的大小与网格单元格相同。您也看不到任何滚动条。但是,根据您要支持的最低分辨率,将MinWidth和MinHeight设置为控件是个好主意。例如 -

<Grid>
    <Grid.RowDefinitions>
        <RowDefinition Height="1*"/>
        <RowDefinition Height="1*"/>
        <RowDefinition Height="5*"/>
    </Grid.RowDefinitions>
    <Grid.ColumnDefinitions>
        <ColumnDefinition Width="1*"/>
        <ColumnDefinition Width="3*"/>
    </Grid.ColumnDefinitions>
    <TextBox Grid.Column="1" Margin="0" Grid.Row="1" TextWrapping="Wrap" Text="TextBox" VerticalAlignment="Stretch" HorizontalAlignment="Stretch" />
</Grid>

答案 1 :(得分:0)

使用ViewBox

<Viewbox VerticalAlignment="Stretch" HorizontalAlignment="Stretch"/>