原文:https://www.cnblogs.com/fengsantianya/p/5628376.html

1.anchor

正如名称暗示的那样,这个属性迫使控件将其自身定位在父窗体或父控件中的某个相对或绝对位置。这个属性有四个可以开启或关闭的值:

  • Top—表示控件中与父窗体(或父控件)相关的顶部应该保持固定。
  • Bottom—表示控件中与父窗体(或父控件)相关的底边应该保持固定。
  • Left-表示控件中与父窗体(或父控件)相关的左边缘应该保持固定。
  • Right-表示控件中与父窗体(或父控件)相关的右边缘应该保持固定。

实例: anchor left bottom可以保持控件大小不变,且相对底部和左边不变
left bottom 可以保持控件大小不变,且相对底部和右边不变
C#控件属性之dock anchor - 图1
扩大后
C#控件属性之dock anchor - 图2

2020-04-22-13-24-42.mp4 (2.43MB)

2.dock

Dock属性迫使控件紧贴父窗体(或控件)的某个边缘。虽然Anchor属性也可以实现这一点,但是dock属性使得你能够在父窗体中让子窗体可以在上方(或旁边)互相“堆叠”。如果某个子窗体改变了大小,其它停驻在它旁边的子窗体也会随之改变。和Anchor属性不同的是,你可以将Dock属性设置为一个单值。有效值如下所示:
.Top—迫使控件位于父窗体(或控件)的顶部。如果有同一个父窗体的其它子控件也被设置为停驻在顶音的话,那么控件将在彼此上方相互堆叠。
Bottom-追使控件位于父窗体(或控件)的底部。如果有同一个父窗体的其它子控件也被设置为停驻在底部的话,那么控件将在彼此上方相互堆叠。
Left-迫使控件位于父窗体(或控件)的左边。如果有同一个父窗体的其它子控件也被设置为停驻在左i的话,那么控件将在彼此旁边相互堆叠。
,Right迫使控件位于父窗体(或控件)的右边。如果有同一个父窗体的其它子控件也被设置为停驻在右边的话,那么控件将在彼此旁边相互堆叠。
.Fill迫使控件位于父窗体(或控件)的上方。如果有同一个父窗体的其它子控件也被设置为停驻在上方的话,那么控件将在彼此上方相互堆叠。
,None-表示控件将会正常运转。
C#控件属性之dock anchor - 图4
扩大后
C#控件属性之dock anchor - 图5