Winforms TableLayoutPanel adicionando linhas programaticamente

Eu tenho lutado com isso por um tempo, e descobri que um número de outras pessoas lutam com o TableLayoutPanel (.net 2.0 WinForms) também.

Problema

Eu estou tentando tomar um tablelayoutpanel 'em branco', que tem 10 colunas definidas, em seguida, em tempo de execução programaticamente adicionar linhas de controles (ou seja, um controle por célula).

Alguém poderia pensar que deveria ser tão simples quanto

myTableLayoutPanel.Controls.Add(myControl, 0 /* Column Index */, 0 /* Row index */);

Mas isso (para mim) não adiciona as linhas. Então, talvez adicionando um estilo de linha

myTableLayoutPanel.RowStyles.Clear();
myTableLayoutPanel.RowStyles.Add(new RowStyle(SizeType.Absolute, 30F));

Mas isso não funciona também. Eu cavei ao redor e descobri que omyTableLayoutPanel.RowCount mudanças de uso do tempo de design para o tempo de execução, fazendomyTableLayoutPanel.RowCount++; na verdade não adiciona outra linha, nem mesmo antes / depois de adicionar uma entrada RowStyle para ela!

Outro problema relacionado que estou encontrando é que os controles serão adicionados à exibição, mas todos eles simplesmente são renderizados no ponto 0,0 do TableLayoutPanel, além disso, eles não estão nem mesmo restritos a estar dentro dos limites da célula que deveriam ser exibido dentro (ou seja, com Dock = DockStyle.Fill eles ainda parecem muito grandes / pequenos).

Alguém tem um exemplo funcional de adicionar linhas e controles em tempo de execução?

questionAnswers(8)

yourAnswerToTheQuestion