Winforms TableLayoutPanel agregando filas programáticamente

He estado luchando con esto por un tiempo, y he encontrado que otras personas también luchan con TableLayoutPanel (.net 2.0 Winforms).

Problema

Estoy intentando tomar un panel de visualización de tabla "en blanco", que tiene 10 columnas definidas, luego en tiempo de ejecución agregar filas de controles mediante programación (es decir, un control por celda).

Uno podría haber pensado que debería ser tan simple como

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

Pero eso (para mí) no agrega las filas. Así que tal vez agregando en un estilo de fila

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

Pero eso tampoco funciona. He cavado alrededor y descubrí que elmyTableLayoutPanel.RowCount el uso cambia de tiempo de diseño a tiempo de ejecución, por lo tanto haciendomyTableLayoutPanel.RowCount++; en realidad no agrega otra fila, ni siquiera antes / después de agregar una entrada RowStyle para ella.

Otro problema relacionado con el que me encuentro es que los controles se agregarán a la pantalla, pero todos simplemente se procesan en el punto 0,0 de TableLayoutPanel, además, ni siquiera están obligados a estar dentro de los límites de la celda que se supone que deben estar se muestran dentro (es decir, con Dock = DockStyle.Fill, todavía parecen demasiado grandes / pequeños).

¿Alguien tiene un ejemplo práctico de agregar filas y controles en tiempo de ejecución?

Respuestas a la pregunta(8)

Su respuesta a la pregunta