如何减少动态添加行和列到TablelayoutPanel的时间?

时间:2010-10-20 08:18:55

标签: c# winforms

我有兴趣减少动态地向tablelayoutpanel添加行和列的时间。

我需要添加10行10列(最多10x 10 = 100个控件,可能小于100,具体取决于用户输入),我构建的逻辑运行良好,但我的逻辑问题是需要相当长的时间将行和列添加到tablelayoutpanel。

    for (int rowNumber = 1; rowNumber <= (TSegments.Value); rowNumber++)
    {
        for (int columnNumber = 1; columnNumber < (PSegments.Value) * 2 + 2; columnNumber++)
        {
            tempTextBox = new TextBox(); 
            tableLayoutPanel1.Controls.Add(tempTextBox, columnNumber, rowNumber);
            tempTextBox.Anchor = System.Windows.Forms.AnchorStyles.Right; 
            tempTextBox.Dock = DockStyle.Fill;
        }
    }

1 个答案:

答案 0 :(得分:2)

加快速度的最佳/唯一方法是使用Suspendlayout / ResumeLayout包围更改。只需在更改表之前调用yourtable.Suspendlayout(),然后再调用ResumeLayout()。