TableLayoutPanel – Controls hinzufügen und löschen

private void AddButton(int iCol, int iRow, string sCaption, string sName)
{
    Button b = new Button();

    b.Text = sCaption;
    b.Name = sName;

    // Button der Controlliste hinzufügen
    tableLayoutPanel1.Controls.Add(b, iCol, iRow);
}

// Control aus einer best. Zelle löschen
private void DelControl(int iCol, int iRow)
{
    // alle Controls des TableLayoutPanels durchgehen und prüfen
    for (int i = tableLayoutPanel1.Controls.Count - 1; i ->= 0; i--)
    {
        if (tableLayoutPanel1.GetColumn(tableLayoutPanel1.Controls[i]) == iCol)
        {
            if (tableLayoutPanel1.GetRow(tableLayoutPanel1.Controls[i]) == iRow)
            {
                // wenn das Control gefunden wurde, dann aus der Liste löschen
                tableLayoutPanel1.Controls.RemoveAt(i);
            }
        }
    }
}