1

我制作了新项目并对其进行了简化以检查此错误是否真实,这是我的代码:

    private void button1_Click(object sender, EventArgs e)
    {
        for (int i = 0; i < 10; i++)
        {
            groupBox1.Height += 1;
            Thread.Sleep(100);
        }
    }
    private void button2_Click(object sender, EventArgs e)
    {
        for (int i = 0; i < 10; i++)
        {
            textBox1.Height += 1;
            Thread.Sleep(100);
        }
    }

装上form 2按钮,groupBox和textBox,观察textBox在迭代之间如何平滑变化,以及groupBox循环结束后如何变化。为什么会这样?

我在 .NET 2.0 和 3.5 上对其进行了测试——效果相同。

4

1 回答 1

1

我不知道 GroupBox 与 TextBox 或 Panel 行为不同的根本原因,但这可能与 GroupBox 用作容器控件但实际上并不从任何容器类型继承的事实有关。Panel 继承自 ScrollableControl,可能会添加一些额外的布局逻辑。

如果问题只是让它平稳增长,您可以添加groupBox1.Refresh();到您的代码中来完成此操作。

于 2010-09-12T02:10:04.350 回答