Creer dynamiquement un panel

Signaler
Messages postés
805
Date d'inscription
jeudi 22 mai 2003
Statut
Membre
Dernière intervention
30 octobre 2010
-
Messages postés
40
Date d'inscription
lundi 29 septembre 2003
Statut
Membre
Dernière intervention
2 janvier 2009
-
slt
pouvez-vous me montrer comment créer un tableau de panel dynamiquement(en execution)?? comme ca ca marche pas:

System.Windows.Forms.Panel [] pan = new monpanel[ 5];

merci merci (j'a redoublé le sujet car je savais pas que dynamiquement == en execution != clone )
merci merci

8 réponses

Messages postés
1024
Date d'inscription
mardi 4 février 2003
Statut
Membre
Dernière intervention
7 juin 2010
62
Avec cette ligne, tu crée le tableau de Panel, il faut encore les instancier, et les ajouter au formulaire.

for(int i=0;i<5;i++){
pan [i] = new monpanel();
//Ajouter pan[i] au form, là où tu veux.
}

Amicalement, SharpMao
Messages postés
805
Date d'inscription
jeudi 22 mai 2003
Statut
Membre
Dernière intervention
30 octobre 2010

et ils vont avoir les controles aussi??

merci de toute facon m.SharpMao
Messages postés
1024
Date d'inscription
mardi 4 février 2003
Statut
Membre
Dernière intervention
7 juin 2010
62
Qui c'est ce ils?
Amicalement, SharpMao
Messages postés
1024
Date d'inscription
mardi 4 février 2003
Statut
Membre
Dernière intervention
7 juin 2010
62
Est-ce que tu travail en WinForms ou en WebForms ?
Amicalement, SharpMao
Messages postés
805
Date d'inscription
jeudi 22 mai 2003
Statut
Membre
Dernière intervention
30 octobre 2010

je bosse en winform, et les ils c pour les panels crées,vont-ils avoir les même controles enfants???
Messages postés
6351
Date d'inscription
samedi 1 juin 2002
Statut
Modérateur
Dernière intervention
2 août 2014
86
non, il faudra que tu les rajoute a chaque panel

enfin là si tu dois avoir tjs les mêmes controles enfants n'aurais tu pas interet a te faire un petit usercontrol ?

Cocoricoooooooo !!!!
coq
MVP Visual C#
Messages postés
1024
Date d'inscription
mardi 4 février 2003
Statut
Membre
Dernière intervention
7 juin 2010
62
Je crois que j'avais mal conpris la question.
Tu aimerais avoir un tableau avec cinq fois la même instance de monpanel ?
Si c'est le cas, il risque en effet d'y avoir des problèmes.
Le plus simple à mon avis serais de faire autrement, et je vois deux solutions :
- utiliser des usercontrols
- ou créer une classe héritant de Panel, à laquelle tu ajoutes les controls que tu veux dans le constructeur. Tu peux alors avoir cinq instances différentes de ce panel sans problèmes.
Amicalement, SharpMao
Messages postés
40
Date d'inscription
lundi 29 septembre 2003
Statut
Membre
Dernière intervention
2 janvier 2009

namespace essai
{
partial class Form1 : Form
{
private Panel[] mesPanels;

public Form1()
{
InitializeComponent();
}

private void button1_Click(object sender, EventArgs e)
{
mesPanels = new Panel[5];
for (int i 0, x 0; i < 5; i++, x+=50)
{
mesPanels[i] = new Panel();
mesPanels[i].Size = new Size(40, 40);//taille du panel
mesPanels[i].Location = new Point(x, 0);// origine du panel
mesPanels[i].Parent = this;// le coller sur la form

mesPanels[i].BackColor = Color.Red;// juste pour l esssai pour pouvoir le voir
}
}
}
}

pour plus d info www.coderneedhelp.com