Dessiner un tableau

Résolu
cudenetf Messages postés 448 Date d'inscription mardi 20 septembre 2005 Statut Membre Dernière intervention 26 juillet 2012 - 7 juin 2006 à 16:45
yelima Messages postés 86 Date d'inscription mardi 12 février 2002 Statut Membre Dernière intervention 8 novembre 2009 - 5 sept. 2008 à 14:59
bonjour,
j'aimerais sur un formulaire avoir un tableau (visuel)
avec par exemple
nom   | Prenom | sexe | etc....
 ____|_______|_____|________
         |              |          |

qu'un utilisateur peut remplir
j'aimerais egalement qu'on puisse creer une nouvelle ligne a chaque fois (dynamiquement)
par exemple pour creer plusieurs personnes (ds ce cas ci)
on pourrazit en meme temps les enregistrer ds une arraylist ou un truc comme ca
mais c surtout le "dessin" du tzableau qui m'ennuie
Je n'ai pas trouvé d emethode simple pour le faire
sauf creer un control specifique ligne composé de diverses textbox que je mpet les unes a cotes des autres
J'en crée une a chaque fois ke je place en dessou de la precedente mais cette methode ne me plait guere.

Ds visual studio 2005, il y a tablelayoutpanel qui peut représenter une grille (dan slaquezlle il faut quand meme rajouter des textbox ou autre)
mais plus je rajoute d'elements et plus elle prend du temps a se dessiner
J'ai dit de creer une nouvelle ligne a chaque fois que j'appuie su r la touche entrer:
j'ajoute une ligne : tablelayoutpanel1.rowcount+=1;
j'augmente la taille : tablelayoutpanel1.Height+=30;
j'ajoute les elements ds la table:
tablelayoutpanel1.controls.add(textbox,0, tablelayoutpanel1.rowcount-1);
etc...
et ce la prend beaucoup de temps
enf ait c l'ajout des elements qui sempble prendre bcp de temps
je peux les creer a chaque fois ke j'appuie sur entrer
mais c le .add() qui fait que ca rame
en fait plus il y a de lignes et plus ca rame
voila si quelqu'un peut m'aider ce serait tres gentil a lui

sinon quand j'appuie sur entrer j'aimerais bien qu'il n'y ait pas de bip
comment fait-t-on pour l'enlever?
A voir également:

5 réponses

cs_Bidou Messages postés 5487 Date d'inscription dimanche 4 août 2002 Statut Membre Dernière intervention 20 juin 2013 61
7 juin 2006 à 19:10
Salut,
Si tu dois établir une liaison avec une DataBase, je te conseille plutôt d'utiliser un DataGridView qui a été expressément conçu pour ça ! Il est peut-être un peu dur à prendre en main au début (tellement on peut faire de chose avec), mais ça vaut vraiment la peine d'investir quelques heures pour en comprendre le fonctionnement...

VC# forever
=13319
3
cudenetf Messages postés 448 Date d'inscription mardi 20 septembre 2005 Statut Membre Dernière intervention 26 juillet 2012 2
7 juin 2006 à 18:06
merci de ta reponse rapide
oui ca ressemble a un tableau
mais n'y a t il pas moyen de changer la couleur des headers?
et je ne comprend pas bien comment editer des choses?
j'ai testé un peu mais j'arrive pas a completer la 2e colonne.
en fait entrer du texte ds certaines colonnes (et ne pas pouvoir le faire dans d'autres (les données doivent venir d'une bd))
Existe-t-il un exemple d'utilisation de cet outil?
aussi si je veux qu'une ligne sur 2 soit d'une autre couleur , ya t-il un moyen?
je n'ai pas trop regarder ce control mais possede-t-il un moyen d'indicer les lignes et colonnes afin de retrouver les données?

et le bip pour la touche entrer? (c'est un question en generale) quand je veux passer d'une textbox a l'autre avec "entrer" n, ca bipe . Peut -on le supprimmer

merci
1
yelima Messages postés 86 Date d'inscription mardi 12 février 2002 Statut Membre Dernière intervention 8 novembre 2009 4
5 sept. 2008 à 14:59
Salut dans la meme optique j'aimerais faire un truc de ce genre: afficher les numeros de semaines de l'année en horizontal et la liste des equipements en vertical et le tableau sera rempli à partir d'une table.C'est possible?
1
econs Messages postés 4030 Date d'inscription mardi 13 mai 2003 Statut Membre Dernière intervention 23 décembre 2008 24
7 juin 2006 à 16:47
Salut,


Il y a pas mal de contrôles qui ont l'aspect d'un tableau.


La listView par exemple, en mode View = lvwReport, avec GridLines=True fait un magnifique tableau.







Manu


--------------------------------------------------------------------------------------------
Avant de poster un message, n'oubliez pas de consulter le reglement.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
econs Messages postés 4030 Date d'inscription mardi 13 mai 2003 Statut Membre Dernière intervention 23 décembre 2008 24
7 juin 2006 à 19:13
Voici un exemple de code ajoutant une ligne dans une listView, et affichant l'un des éléments en utilisant des indices. Il te faut juste placer une listView nommée listView1 sur ta feuille pour que çà fonctionne.
Ensuite, le code devrait se comprendre facilement.
Pour ton autre question, qui n'a pas vraiment de lien avec la première, pose la dans un autre topic, çà sera mieux.

        void MainFormLoad(object sender, System.EventArgs e)
        {
            // Mise en mode détails
            listView1.View = System.Windows.Forms.View.Details;
            // Construction des colonnes
            listView1.Columns. Add ("colonne1", (int)(0.5*listView1.Width),System.Windows.Forms.HorizontalAlignment.Left);
            listView1.Columns.Add("colonne2", (int)(0.3*listView1.Width),System.Windows.Forms.HorizontalAlignment.Center);
            listView1.Columns.Add("colonne3", (int)(0.1*listView1.Width),System.Windows.Forms.HorizontalAlignment.Right);
            // Ajout des lignes
            listView1.GridLines =true;
           
            // Construction d'une ligne (1 élément + 2 colonnes supplémentaires)
            ListViewItem lvi = new ListViewItem("donnée1");
            lvi.SubItems.Add("autre donnée1");
            lvi.SubItems.Add("test");
            // Ajout de cette ligne
            listView1.Items.Add(lvi);
           
            // Affichage de l'élément de la ligne 0, colonne 1
            // Sachant que tous les indices commencent à 0.
            MessageBox.Show(listView1.Items[0].SubItems[1].Text);
        }

Manu
--------------------------------------------------------------------------------------------
Avant de poster un message, n'oubliez pas de consulter le reglement.
0
Rejoignez-nous