在后台程序新建一个TableLayoutPanel 添加到form中,默认显示在左上角,想了很多让它居中的办法,在网上找了不少 最好的是:
winform要设置控件的位置有3种:
1.控件的anchor属性属性,,瞄定。。。。你可以理解绑定在某个方向
2.dock属性属性停靠。。。center值就是中间了
3.设置控件的Loction属性,,该属性是设置控件相对窗体左上角的位置。。
不过对它说的第二种方法dock里哪里有center啊,估计它说的是fill(填充),最后我用的是第三种方法:
TableLayoutPanel tlpPrmControls = new TableLayoutPanel();//容器 tlpPrmControls.Location = new System.Drawing.Point((this.Width - tlpPrmControls.Width) / 2, (this.Height - tlpPrmControls.Height - 25) / 2); //设置表格居中
point的方法有两个参数,分别是X,Y。是相对左上角的位置的距离,我对它进行了计算,宽(X)=(将窗体的宽度-TableLayoutPanel的宽度)/2,高度同样计算。
内部元素居中举一个例子比如一个lable
Label lab = new Label(); lab.Text = "Label_" + i; lab.AutoSize = true; //通过Anchor 设置Label 列中居中 lab.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right))); tableLayoutPanel4.Controls.Add(lab);