WPF和屏幕分辨率

时间:2012-07-15 09:57:53

标签: c# wpf

我正在用C#.net开发一个WPF应用程序。我有一个关于窗口调整的问题。在某些屏幕分辨率中,我的主窗口没问题,但在宽屏显示器和其他一些屏幕分辨率窗口和控件中都是杂乱的。

2 个答案:

答案 0 :(得分:1)

您最简单的方法之一是不要设置窗口的宽度和高度,并将属性SizeToContent = WidthAndHeight设置为

<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 Height="226">
    <Grid.ColumnDefinitions>
        <ColumnDefinition Width="*"/>            
    </Grid.ColumnDefinitions>
    <Grid.RowDefinitions>
        <RowDefinition Height="*"/>
    </Grid.RowDefinitions>

我希望这会有所帮助。

答案 1 :(得分:1)

如果你硬编码HeightWidth或仅使用margins对齐元素,则会遇到不同分辨率的缩放问题。您需要一个聪明的网格布局,您只需将行和列分配给控件并设置其HorizontalVertical Alignments。因此,即使网格调整大小,元素的相对排列也不会改变,并且布局将保持一致。 如果您没有在应用程序中利用更高的分辨率(例如显示更多项目),您可以考虑在Canvas内使用ViewBox,这基本上可以缩放以适应所有内容。