Ceci est une ancienne révision du document !
Table des matières
Ajouter un composant
table.Controls.Add(new Label(), col, row);
Ajout d'une colonne / ligne
panel.ColumnCount = 2;
Et ne pas oublier :
panel.ColumnStyles.Add(new ColumnStyle(SizeType.Absolute, 150));
.
c# - Column Styles not working on TableLayoutPanel - Stack Overflow, Archive
C'est la même chose pour les lignes, il suffit de remplacer Column
par Row
.
Par contre, il y a un problème avec Visual Studio 2015
, quand on ajoute une ligne dans l'éditeur graphique, ColumnStyles.Add
est bien ajouté dans la méthode InitializeComponent
mais quand on en supprime une, il est nécessaire de supprimer manuellement la ligne ColumnStyles.Add
.
Suppression d'une ligne
Ici, c'est la dernière ligne qui est supprimée.
int numRow = table.RowCount - 1; for (int i = 0; i < table.ColumnCount; i++) { table.GetControlFromPosition(i, numRow).Dispose(); } table.RowStyles.RemoveAt(numRow); table.RowCount = numRow;
How to insert or delete specific row in tablelayoutpanel_, Archive
Ajouter une scrollbar automatiquement
tableLayoutPanel1.Padding = new Padding(0, 0, SystemInformation.VerticalScrollBarWidth, 0); tableLayoutPanel1.AutoScroll = true;
L'intérêt du padding est que l'ascenseur vertical (ou horizontal) ne prenne pas de place lorsqu'il apparaît, ce qui ce qui pourrait entraîner l'apparition de l'ascenseur horizontale (ou vertical). Après essai, il n'y a pas l'air d'avoir besoin de mettre SystemInformation.HorizontalScrollBarHeight
en quatrième valeur du Padding
. Voir exemple ci-dessous. c# - vertical and horizontal scrollbars appear when only the horizontal should - Stack Overflow, Archive.