C# 为什么我的TextBox.Width值不接受值I';我在试着分配它?
我试图通过为动态创建的控件指定一个宽度和高度来均匀分配空间,该宽度和高度是容器控件的宽度和高度的一小部分 然而,尽管我的计算维度的函数是正确的,但由于某些原因,对Width属性的赋值被顽固地拒绝了。WidthToUse()函数返回19,但当尝试将该vaue分配给动态创建的文本框时,它仍保持在…630!为什么从630开始,为什么拒绝分配 即使是高度,虽然“工作”并不完全正确-面板上的控件太多或空间不足,无法容纳使用此数学的所有控件 这是我的密码:C# 为什么我的TextBox.Width值不接受值I';我在试着分配它?,c#,winforms,dynamic,tablelayoutpanel,C#,Winforms,Dynamic,Tablelayoutpanel,我试图通过为动态创建的控件指定一个宽度和高度来均匀分配空间,该宽度和高度是容器控件的宽度和高度的一小部分 然而,尽管我的计算维度的函数是正确的,但由于某些原因,对Width属性的赋值被顽固地拒绝了。WidthToUse()函数返回19,但当尝试将该vaue分配给动态创建的文本框时,它仍保持在…630!为什么从630开始,为什么拒绝分配 即使是高度,虽然“工作”并不完全正确-面板上的控件太多或空间不足,无法容纳使用此数学的所有控件 这是我的密码: int WidthToUse = getTextB
int WidthToUse = getTextBoxWidthToUse(tableLayoutPanelGreatGooglyMoogly.Width);
int HeightToUse = getControlHeightToUse(tableLayoutPanelGreatGooglyMoogly.Height);
TextBox txtbx = new TextBox();
txtbx.Parent = tableLayoutPanelGreatGooglyMoogly;
txtbx.Margin = new Padding();
txtbx.Dock = DockStyle.Fill;
txtbx.AutoSize = false;
txtbx.Width = WidthToUse; // WidthToUse is 19, but txtbx.Width is 630 both before AND after this assignment!
txtbx.Height = HeightToUse; // HeightToUse is 27
private static int getControlHeightToUse(int theDynPanelHeight) {
return (theDynPanelHeight / NUMBER_OF_ROWS);
}
private static int getTextBoxWidthToUse(int theDynPanelWidth) {
return (theDynPanelWidth / 32);
}
private static int getLabelWidthToUse(int theDynPanelWidth) {
return ((theDynPanelWidth / 64) * 3);
}
因为
Dock
属性设置为Fill
将是我的猜测。因为Dock
属性设置为Fill
将是我的猜测。DockStyle.Fill是描述控件相对于其容器大小的大小的属性。控件将调整大小以适应具有此属性集的其父容器中的所有空白 DockStyle.Fill是一个属性,描述控件相对于其容器大小的大小。控件将调整大小以适应具有此属性集的其父容器中的所有空白 如果您使用的是DockStyle.Fill,为什么要设置显式大小?如果您使用的是DockStyle.Fill,为什么要设置显式大小?好的,这是真的;现在的问题是:我如何让文本框占据“牢房”中的所有空间——它们附着在白杨上,我明白了;我感觉自己像一个木偶,拉着一些线向上,一些向下,直到我找到了正确的组合,使各个部分一起跳舞。奇怪/令人沮丧的是,将控件的高度设置为容器的高度除以行数不起作用,将宽度设置为容器的宽度除以列数也不起作用。当有12行时,我必须将高度除数设置为14。我猜填充或其他一些“绒毛”导致了这种令人不快的偏移;现在的问题是:我如何让文本框占据“牢房”中的所有空间——它们附着在白杨上,我明白了;我感觉自己像一个木偶,拉着一些线向上,一些向下,直到我找到了正确的组合,使各个部分一起跳舞。奇怪/令人沮丧的是,将控件的高度设置为容器的高度除以行数不起作用,将宽度设置为容器的宽度除以列数也不起作用。当有12行时,我必须将高度除数设置为14。我猜填充或其他一些“绒毛”导致了这种令人不快的偏移。