为什么是文本框.MaximumSize值在编译时更改

本文关键字:编译 文本 MaximumSize 为什么 | 更新日期: 2023-09-27 18:02:29

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

为什么是文本框.MaximumSize值在编译时更改

必须设置TextBox。AutoSize'false'(你不会在属性窗口看到它,智能不会显示它,但它在那里)。否则,文本框会一直忽略MaximumSize的Height部分。

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

尝试禁用AutoSize属性:

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

检查锚。如果您将TextBox锚定在其容器的顶部和底部(即:

,并且该容器被调整大小,那么TextBox也将被调整大小

如果TextBox.MaximumSize在设计时为267,0,则TextBox.Border对运行时值的影响如下:

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