Afficher une liste de User Control [Résolu]

Messages postés
6
Date d'inscription
mardi 9 septembre 2008
Statut
Membre
Dernière intervention
15 avril 2010
- - Dernière réponse : Glucoz21
Messages postés
6
Date d'inscription
mardi 9 septembre 2008
Statut
Membre
Dernière intervention
15 avril 2010
- 4 févr. 2010 à 10:29
Bonjour à tous.

Voila je suis sur un problème depuis 2 jours et malgré mes recherches sur internet, je ne trouve pas comment le résoudre...
Je m'adresse donc à vos grandes compétences et vous demande votre aide.

Mon problème : je cherche à afficher une liste d'éléments bien particuliers. Pour cela j'ai donc créé un User Control qui va bien et je souhaite, à travers le code, faire afficher ma liste de User Control en ligne les uns à côté des autres...
Or je n'y arrive pas. J'ai essayé avec une listBox mais il n'y a que le nom de mes UserControl qui s'affichent les uns à la suite des autres.

// Pour chaque élément dans ma boucle, je crée un User Control et je l'affiche
ucTest newUcTest = new ucTest(titre, titre2, couleur);
listbox1.Items.Add(newUcTest);


J'ai pensé aussi à la listView mais je ne vois pas comment faire...

Si quelqu'un connait la solution, merci de m'aider.

En attendant, je vous souhaite une bonne journée.

Cordialement,
Afficher la suite 

2 réponses

Meilleure réponse
Messages postés
6
Date d'inscription
mardi 9 septembre 2008
Statut
Membre
Dernière intervention
15 avril 2010
1
1
Merci
Bonjour à tous.

J'ai résolu mon problème. J'ai donc utilisé le panel dans lequel j'ajoute mes différents userControl au fur et à mesure puis je les place dans le panel les uns à côté des autres.

Je vous met ici ma solution au cas où d'autres personnes auraient besoin de cette astuce.


ucMonUserControl newUserControl;
// Positionnement du usercontrol dans le panel.
// Si aucun controle dans le panel, on le positionne en premier
// S'il y a déjà un contrôle, on place le nouveau contrôle juste à droite de ce contrôle
if (panel1.Controls.Count == 0)
{
    newUserControl.Location = new System.Drawing.Point(0, 0);
}
else
{
    Control previous = (Control)panel1.Controls[panel1.Controls.Count - 1];
    newUserControl.Location = new Point(previous.Location.X + previous.Width, 0);
}
this.panel1.Controls.Add(ucMonArret);
panel1.AutoScroll = true;



Voilà, bon développement à tous !

Dire « Merci » 1

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 205 internautes nous ont dit merci ce mois-ci

Commenter la réponse de Glucoz21
Messages postés
14681
Date d'inscription
lundi 11 juillet 2005
Statut
Modérateur
Dernière intervention
5 décembre 2019
90
0
Merci
Hello,
Tu veux afficher tes composants les uns à la suite des autres?
Regarde le composant StackPanel dans ce cas.


@+
Buno
----------------------------------------
L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai...
Commenter la réponse de BunoCS