0
我有一个TableLayoutPanel控件最初是空的--0行和0列。我想形成它,并用代码中的一些控件填充它,它有效,但我有一些讨厌的问题 - 当我使用代码向TableLayoutPanel添加控件时,列和行的大小不一样(尽管所有添加的控件都是相同的大小,并停靠填充TableLayoutPanel容器中的单元格)。基本上第一排占据高度的50%,而下两排占25%。TableLayout问题的单元格大小(C#)
码我曾尝试是这样的:
//Reseting table:
tableLayoutPanel1.RowCount = 1;
tableLayoutPanel1.ColumnCount = 1;
//Size of one side of matrix:
int oneSide=(int)Math.Sqrt(mat.Matrix.Length);
tableLayoutPanel1.RowCount = oneSide;
tableLayoutPanel1.ColumnCount = oneSide;
tableLayoutPanel1.RowStyles.Clear();
tableLayoutPanel1.ColumnStyles.Clear();
tableLayoutPanel1.RowStyles.Add(new RowStyle(SizeType.Percent, 100/oneSide));
tableLayoutPanel1.ColumnStyles.Add(new ColumnStyle(SizeType.Percent, 100/oneSide));
//Matrix is an array of controls, mat is some class
tableLayoutPanel1.Controls.AddRange(mat.Matrix);
上面的代码是不是做的工作......如何从代码添加somtrols,并且使所有细胞大小一致? P.S.我必须从代码中添加控件,在设计时创建行和列是不可能的。
TNX很多!我只是按照你的指示,发现设计师非常不寻常的东西:行“RowStyles.Add”必须重复所有行!只有一个“RowStyles.Add”不会为所有行添加样式,仅适用于一个! :)))) – guest86 2011-04-07 21:48:25