C# WinForm窗口自适应布局
本文用一个实际布局案例,介绍了利用`Docker`和`Anchor`来实现一个自适应大小的界面布局,以及控件放置顺序对布局效果的影响。
【转载请注明出处:https://blog.csdn.net/Leytton/article/details/92447713】
如果本文对您有所帮助,请点个赞让我知道哦 😃
本文用一个实际布局案例,介绍了利用Docker和Anchor来实现一个自适应大小的界面布局,以及控件放置顺序对布局效果的影响。
我们从一张图开始说起,如下图所示,窗体调整大小时,C处列表组件会自动缩放填充满。

这是缩小后的界面:
布局属性:
A MenuStrip 菜单控件,Docker属性为Top
B Panel 面板控件,Docker属性为Top
C ListVIew 列表控件,Docker属性为Fill
D StatusStrip 状态控件,Docker属性为Bottom
其他:全选按钮:Docker属性为None,Anchor属性为Top, Left开启按钮:Docker属性为None,Anchor属性为Top, Right停止按钮:Docker属性为None,Anchor属性为Top, Right
说明下:
1、Docker属性为None时,Anchor属性才有效
2、Anchor可以理解为停靠依附,就像用钉子定住了一样,属性为Top, Right则无论怎样调整窗口大小,控件与父控件上方、右方的距离永远不变,其它属性类似。
3、Docker为Fill属性则会填满父控件,为Top时就会从父控件的顶部开始填充一定高度,但是,会按底层控件先填充的原则,所以控件放置的先后顺序会对填充效果造成影响。
比如:
如下图所示,把 B控件(Docker属性为Top)置于底层,则B控件的位置移到了最上面:
如下图所示,把C控件(Docker属性为Fill)置于底层,则C控件的顶部被其他控件遮挡:
更多推荐




所有评论(0)