C# WPF程序中实现简单自适应功能的方法

想当初在Delphi7写程序时为了使窗口自适应花了好久,最后实在不想调整了干脆把窗口设置成无法调整大小orz

在C# Wpf程序中可以很轻松地实现这一功能

具体方法如下:

首先点击Width和Height右边的图标将长宽调节为自动。

根据需要在窗口中画出一定数量的辅助线。

调整大小的方式设为星形调整大小,然后根据需要更改数值。这样辅助线会以输入的数值按比例排列。

正常加入一个组件后会在XAML框中显示如下代码:

我们将HorizontalAlignment、 Height、VerticalAlignment、Width等不必要的数据删去,留下(根据需要写入)Grid.Row、Grid.RowSpan、Grid.Column、Grid.ColumnSpan、Margin等数据,可得到如下代码:

其中

Grid.Row表示上方以第几条辅助线为准(默认为0)

Grid.RowSpan表示下方以第几条(相对上方而言)辅助线为准(默认为1,超过合法数据时以下方边框为准)

Grid.Column表示左侧以第几条辅助线为准(默认为0)

Grid.ColumnSpan表示右侧以第几条(相对左侧而言)辅助线为准(默认为1,超过合法数据时以右侧边框为准)

Margin中的四个数字分别表示左,上,右,下分别距离基准位置多少像素。

至此窗口已基本实现自适应功能。

Ps:嵌套的控件也可以通过此方法来实现窗口自适应,不知道比Delphi7高到哪里去。

发表评论