我对填充userControl (DockStyle.Fill)的TableLayoutPanel有一个问题。我遇到了一个麻烦,当这个控件正在调整大小时,我需要所有的单元格都改变它们的大小,但只有最后一行和最后一列改变了大小(所以整个tableLayoutPanel填充了控件)。我使用Bounds属性更改了这个控件的大小。
假设我写了以下代码:
// creating tableLayoutPanel:
private void createTableLayoutPanel(int count)
{
tableLayoutPanel = new TableLayoutPanel();
tableLayoutPanel.MouseClick += new MouseEventHandler(this.observe_MouseClick);
tableLayoutPanel.AutoSize = true;
tableLayoutPanel.ColumnCount = 3;
tableLayoutPanel.RowCount = count;
tableLayoutPanel.Dock = DockStyle.Fill;
tableLayoutPanel.AutoSize = true;
this.Controls.Add(tableLayoutPanel);
}
// resizing:
private void OnMouseWheel(MouseEventArgs e)
{
this.Bounds = new Rectangle(this.Location.X, this.Location.Y, (int)(this.Width*newScale),(int)(this.Height*newScale));
}谢谢你的帮助。
发布于 2010-08-11 02:32:48
对于每一行,使用SizeType = SizeType.Percent和Height = 100 / tableLayoutPanel.RowCount向TableLayoutPanel的RowStyles集合添加一项。对ColumnStyles集合执行相同的操作。
https://stackoverflow.com/questions/3452025
复制相似问题