Une des multiples solutions!
En conception dans ta forme "MyForm" :
- définir un panel général "GeneralPanel" destiné à contenir toutes les lignes avec propriété AutoScroll à true,
- insérer dans le panel général, un Panel ligne "LinePanel" contenant les contrôles correspondant aux 4 champs avec propriété Dock=Top et Modifiers=internal
Dans le constructeur de la form après initializeComponents():
Définir un tableau de Panels pour retrouver ses petits plus tard :
1 2
| List<Panel> PanelList = new List<Panel>() ;
PanelList.Add(LinePanel) : // la première ligne déjà dans la forme |
En exécution, si on veut ajouter une ligne :
1 2 3 4
| MyForm TempForm=new MyForm() ;
TempForm.LinePanel.Parent=GeneralPanel ;
PanelList.Add(TempForm.LinePanel) ;
TempForm.Dispose(); |
Et pour récupérer par exemple la valeur d'une Textbox dans la ligne i :
string NomLivre = ((TextBox)PanelList[i].Controls("NomLivreTextBox")).Text ;
Partager