首页 > 代码库 > WinForm布局

WinForm布局

1.布局属性

(1)Anchor  相当于一个锚点一样锁定控件位置.会根据其锚点来变化大小

共四个位置绑定:

  • 上部锚点[距离顶部距离固定]
  • 底部锚点[距离底部距离固定]
  • 左侧锚点[距离左侧距离固定]
  • 右侧锚点[距离右侧距离固定]

可以每次选定一个锚点,也可以使用多个锚点,使用多个锚点时,控件大小可能会随着容器大小

变化发生变化,[因为锚点是固定的位置,固定距离不会发生变化]

(2)Dock 控件与所在容器绑定.自动调整自身大小.

可实现绑定:

  • 顶部 
  • 底部             
  • 左侧               
  • 右侧               
  • 填充整个容器

(3)Location  控件左上角相当于容器左上角的坐标.不会调整自身大小.

  • 控件居中显示:
  • int gLeft = this.Width / 2 - button1.Width / 2; //this指Form
  • int gTop = this.Height / 2 - button1.Height / 2;
  • button1.Location = new Point(gLeft, gTop);

(4)StartPosition属性有如下选项,分别含义如下:

  •   CenterParent                     窗体在其父窗体中居中。    
  •   CenterScreen                     窗体在当前显示窗口中居中,其尺寸在窗体大小中指定。    
  •   Manual                           窗体的位置由   Location   属性确定。    
  •   WindowsDefaultBounds     窗体定位在   Windows   默认位置,其边界也由   Windows   默认决定。    
  •   WindowsDefaultLocation    窗体定位在   Windows   默认位置,其尺寸在窗体大小中指定。         
  •    CenterScreen的意思并不是屏幕居中(是相对的),它是在"当前显示窗口"中居中。

2.容器

(1)FlowLayouPanel 普通容器[内部流式布局]

技术分享技术分享

(2)Groupbox 带有标题的普通容器[内部普通布局,超出范围隐藏]

技术分享

(3)Panel 普通容器[内部普通布局,超出范围隐藏]

技术分享

(4)SplitContainer 一个普通容器内被划分成两个Panel普通容器[默认垂直分割]

通过属性中的行为属性Orientation实现改变垂直分割还是水平分割

技术分享

(5)TabControl  带有选项卡的容器

技术分享

(6)TabLayouPanel 表格型容器 [每个表格只能放置一个控件]

技术分享

 

WinForm布局