c# - TableLayoutPanel控件.Add问题

标签 c# tablelayoutpanel

我有一个 TableLayputPanel,它有 2 列和 4 行,我想在运行时向它添加按钮。我想将每个按钮动态添加到第一个单元格:

private int nextIndex = 1;

private void bAddButton_Click(object sender, EventArgs e)
{
    Button newButton = new Button();
    newButton.Text = nextIndex.ToString();
    tableLayoutPanel1.Controls.Add(newButton, 0, 0);  // first cell
    nextIndex++;
}

据我了解,这应该将所有现有按钮向上移动一个单元格。这似乎在前三次工作,但之后是将新按钮插入第二个单元格几次,然后是第三个单元格,然后是第四个单元格,依此类推......

对于给定单元格可以调用 Controls.Add(ctrl, column, row) 的次数是否有限制?

我有点卡住了,我做错了什么?

最佳答案

我也遇到了同样的问题!对我有帮助的是:

  1. 在表单的设计 View 中单击您的表格

  2. 将 AutoScroll 和 AutoSize 设置为 True

  3. 转到编辑行和列

  4. 单击第一行(可能是唯一一行)并将其大小类型设置为自动调整大小

所有新行也将具有 Size Type AutoSize。多亏了这个,我的行才能正确定位和调整大小。

关于c# - TableLayoutPanel控件.Add问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1700792/

相关文章:

c# - 删除 TableLayoutPanel 中的行会导致布局问题

c# - C# 中可调整大小的表格布局面板

c# - 如何以编程方式在 TableLayoutPanel 上应用列和行样式?

c# - 一个解决方案中包含多个 Azure 云服务

c# - 将 long 转换为十六进制字符串(如内存地址)

c# - 对循环缓冲区进行排序的最有效方法

c# - 在 WinForms 中设置按钮填充父级的所有宽度和顶部

c# - 表格布局面板错误的列顺序

c# - 如何使用 ConfigurationManager.AppSettings

c# - 从c#中的字符串中提取最后一个匹配项