这个问题比解释得更好,所以我用 Visual Studio 2010 项目设置了一个git 存储库,用于查看问题的实际情况。
我有一个项目,我已将 ComboBox 控件 ( comboField
) 添加到 TableLayout 控件 ( tableLayoutPanel1
)。我已将Dock
ComboBox 的属性设置为,Fill
以便它填充它所在的 TableLayout 控件的单元格。我还将Dock
TableLayout 控件的属性设置为,Fill
以便它填充它已放置的表单在。ComboBox 的宽度当前为 193 像素。
当我运行表单并增加其宽度时,ComboBox 的大小会按预期增加。当我减小表单的大小时,ComboBox 的大小会减小,直到达到原始大小(193 像素)。此时,ComboBox 的宽度不会进一步减小,从而导致控件的右侧被剪裁。这与我的预期相反:ComboBox 的宽度将减小到零,因为没有MinimumSize
指定。MinimumSize
窗体上的任何其他控件(例如 TableLayout 控件)都没有指定。
如果相关,TableLayout 的第一列的宽度设置为Absolute
100 像素,而 TableLayout 的第二列的宽度设置为AutoSize
.
任何人都可以解释为什么这个表格的行为与我的期望相反,并建议我如何以我想要的方式让它工作?任何帮助将非常感激。