gpt4 book ai didi

c# - 放置在 TableLayout 中的停靠控件的大小不会自动小于其创建大小

转载 作者:可可西里 更新时间:2023-11-01 08:42:05 25 4
gpt4 key购买 nike

这个问题展示得比解释的好,所以我设置了一个 git repo Visual Studio 2010 项目,用于查看实际问题。

我有一个项目,我在其中添加了 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 .

任何人都可以阐明为什么这种形式的行为与我的预期相反,并建议我如何才能按照我想要的方式让它工作吗?任何帮助将不胜感激。

最佳答案

我下载了您的代码并进行了更改。现在可以用了-

将第2列的SizeType改为percent,设为100%

设计师代码:-

this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 100F));

enter image description here

关于c# - 放置在 TableLayout 中的停靠控件的大小不会自动小于其创建大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11050113/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com