Ajouté des inormation dans plusieur column d'une list View
ismfou
Messages postés11Date d'inscriptiondimanche 1 février 2009StatutMembreDernière intervention11 mai 2009
-
11 mai 2009 à 01:04
ismfou
Messages postés11Date d'inscriptiondimanche 1 février 2009StatutMembreDernière intervention11 mai 2009
-
11 mai 2009 à 21:34
bonsoir,
bon voila je récupéré des information a partir d'un tableau et je veut les affiché dan plusieurs colon mais tous s'affiche sur la premier seulement jais utiliser subitem mai ca donne rien car jutelise une bocle
aidé moi je doi rendre le projet, merci
voici le bou de code :
String[] days = new String[] { "LUNDI", "MARDI", "MERCREDI", "JEUDI", "VENDREDI", "SAMEDI", "DIMANCHE" };
for (int dayIndex = 0; dayIndex < days.Length; dayIndex++)
{
ColumnHeader col = new ColumnHeader();
col.Text = (days[dayIndex]);
col.Width = 130;
lvPers.Columns.Add(col);
for (int hourInDayIndex = 0; hourInDayIndex < 24; hourInDayIndex++)
{
krimog
Messages postés1860Date d'inscriptionlundi 28 novembre 2005StatutMembreDernière intervention14 février 201549 11 mai 2009 à 10:26
Salut
Tout d'abord, relis-toi avant de poster un message s'il te plaît. Ton message et même son sujet contiennent pas mal de fautes.
En ce qui concerne ton problème :
Un ListViewItem est une ligne complète. Donc en faire 7 x 24 aboutira évidemment à 168 lignes. Si j'ai bien compris, tu n'en veux que 24.
Dans ce cas, sort ton for (hourInDayIndex) de ton for (dayIndex).
Puis, dans ton for (hourInDayIndex), crée un nouveau ListViewItem, avec comme Text sa valeur pour Lundi (donc à priori logonHoursMatrix[0, hourInDayIndex].ToString()). Puis fait une boucle qui va de Mardi à Dimanche pour ajouter les valeurs aux SubItems de ton ListViewItem.
Une fois que tu as ajouté le Lundi à Text et les autres jours à SubItems, tu peux ajouter ton ListViewItem à ta ListView.
Krimog : while (!(succeed = try())) ;
- NON, "LE BAR" n'est PAS un langage de programmation ! -
ismfou
Messages postés11Date d'inscriptiondimanche 1 février 2009StatutMembreDernière intervention11 mai 2009 11 mai 2009 à 18:29
merci pour ta sujestion mais elle marche pa je pensse car dan la boucle il recherche la list view et ne la trouve pa enfin voici ce que jai fait:
String
[] days =
new
String[] {
"LUNDI",
"MARDI",
"MERCREDI",
"JEUDI",
"VENDREDI",
"SAMEDI",
"DIMANCHE" };
for (
int dayIndex = 0; dayIndex < days.Length; dayIndex++){
// remplire les colomn
ColumnHeader col =
new
ColumnHeader(); col.Text = (days[dayIndex]);
col.Width = 130;
lvPers.Columns.Add(col);
}
//la premier boucle
for (
int hourInDayIndex = 0; hourInDayIndex < 24; hourInDayIndex++){
ListViewItem it =
new
ListViewItem();it.SubItems[0].Text = (logonHoursMatrix[0, hourInDayIndex] +
" ");
}
for (
int l = 1; l < 7; l++){
it.
for (
int hourInDayIndex = 0; hourInDayIndex < 24; hourInDayIndex++){
krimog
Messages postés1860Date d'inscriptionlundi 28 novembre 2005StatutMembreDernière intervention14 février 201549 11 mai 2009 à 19:36
Avant de traduire ce que je dis en code, réfléchis exactement à ce que je te propose. Car tes boucles montrent que tu n'as pas bien compris ce que je t'ai dit.
Au niveau des étapes :
- On prépare les colonnes
- Pour chaque heure, on prépare un objet avec comme valeur de base celle du lundi
- Pour chaque objet, on rajoute les valeurs du mardi jusqu'au dimanche en valeurs supplémentaires
Ce qui se traduit en :
string[] days = new string[] { "Lundi", "Mardi", "Mercredi", "Jeudi", "Vendredi", "Samedi", "Dimanche" };
for (int dayIndex = 0; dayIndex < days.Length; dayIndex++)
{
ColumnHeader col = new ColumnHeader();
col.Text = days[dayIndex];
col.Width = 130;
lvPers.Columns.Add(col);
}
for (int HourInDayIndex = 0; HourInDayIndex < 24; HourInDayIndex++)
{
ListViewItem it = new ListViewItem();
it.Text /* Et non subitem[0] */= logonHoursMatrix[0, HourInDayIndex].ToString(); // .ToString() c'est beaucoup plus propre que + " "
for (int i = 1; i < days.Length; i++) // Cette boucle est imbriquée, donc lors de la création du ListViewItem
{
it.SubItems.Add(logonHoursMatrix[i, HourInDayIndex].ToString());
}
lvPers.Items.Add(it); // L'ajout doit aussi se faire dans la boucle
}
Krimog : while (!(succeed = try())) ;
- NON, "LE BAR" n'est PAS un langage de programmation ! -