为什么在编译时更改Textbox.MaximumSize值?

时间:2014-05-09 13:41:13

标签: c# winforms textbox height

我有一个带有Textbox的usercontrol。 我需要MaximumSize为267,0的文本框。 出于某种原因,如果我编译项目的值设置为267,4。这打破了我用来调整其高度大小以响应文本版本的代码。 有人以前遇到过这个问题吗?可能是什么原因?

3 个答案:

答案 0 :(得分:1)

您必须将 TextBox.AutoSize 设置为 'false' (您不会在属性窗口,intelisence将不会显示它,但它就在那里)。否则,TextBox将继续忽略MaximumSize的高度部分。

答案 1 :(得分:0)

调整大小可能有几个原因。我能想到的两个:

尝试禁用AutoSize属性:

textBox1.AutoSize = false;
textBox1.Height = 0;

检查锚点。如果TextBox锚定到其容器的顶部和底部(即用户控件),并且该容器已调整大小,那么TextBox也将调整大小

答案 2 :(得分:0)

如果TextBox.MaximumSize在设计时为267,0,则TextBox.Border似乎会影响运行时值,如下所示:

如果,则TextBox.MaximumSize为267,0。 如果 FixedSingle ,则TextBox.MaximumSize为267,2。 如果 Fixed3D ,则TextBox.MaximumSize为267,4。