C# listview test si valeur existe déjà

Fermé
necro27 Messages postés 160 Date d'inscription jeudi 28 mai 2009 Statut Membre Dernière intervention 11 février 2011 - 21 oct. 2010 à 16:43
Bonjour,

J'essaie en vain de tester si une valeur existe ou non dans une listview.

Explications :

j'ai deux 'sortes' de fichier .csv
--> Membre.csv
--> Pointage.csv (un exemplaire par n° de semaine)

Sur le fichier pointage.csv je dispose d'heures auxquelles le salarié a pointé sur une semaine précise (fictif).
Sur le fichier membre.csv est la liste des salariés de l'entreprise (fictive également).

J'ai ainsi 2 liste view
--> une qui recense les différents fichiers existants
--> pointagesemaine1.csv
--> pointagesemaine2.csv
--> etc...
-->une qui, une fois un fichier sélectionné, affiche les membres ayant pointé sur cette semaine.

dans le fichier pointagesemaine1.csv, le contenu est représenté de la manière suivante

lundi 18 octobre 2010;2;09:00:00
lundi 18 octobre 2010;3;09:01:00
lundi 18 octobre 2010;2;12:00:00
lundi 18 octobre 2010;2;12:15:00
lundi 18 octobre 2010;3;12:30:00
lundi 18 octobre 2010;3;12:45:00
lundi 18 octobre 2010;2;15:00:00
lundi 18 octobre 2010;3;15:01:00
..
mardi 19 octobre 2010;3;09:00:30
mardi 19 octobre 2010;4;09:30:30
mardi 19 octobre 2010;3;12:30:30
mardi 19 octobre 2010;3;12:45:30
mardi 19 octobre 2010;4;13:00:30
mardi 19 octobre 2010;4;13:15:30
mardi 19 octobre 2010;3;15:00:30
mardi 19 octobre 2010;4;15:00:30
..

ainsi "date / matricule / heure".

sur le fichier membre.csv
nom1 / prenom1 / 1
nom2 / prenom2 / 2
nom3 / prenom3 / 3
nom4 / prenom4 / 4
...

dans ma liste view "membre" je veux donc afficher tous les membres ayant travaillé cette semaine là.
ainsi j'afficherai (ce que je veux)

nom2 / prenom2 / 2
nom3 / prenom3 / 3
nom4 / prenom4 / 4

car nom1 n'a pas travaillé cette semaine là.

Le souci est que en effet le programme affiche (ce qui se passe)

nom2 / prenom2 / 2
nom3 / prenom3 / 3
nom2 / prenom2 / 2
nom2 / prenom2 / 2
nom3 / prenom3 / 3
nom3 / prenom3 / 3
nom2 / prenom2 / 2
nom3 / prenom3 / 3
....

En effet pour chaque ligne de pointage il m'affiche le salarié, mais je voudrais éviter les doublons.

c'est ici que je bloque car je ne voie pas comment, sur la liste view membre, aller rechercher si le salarié à déjà été affiché ou pas.

Voià sur quoi je cherche, en vain..

this.LstSalarie.SelectedItems[0].SubItems[2].Tex

ainsi faire un

while (la liste view n'est pas parcourue en entier && trouve = faux)
{
if (colonne 3 != matricule) // matricule est supposé correct et testé auparavant
{
je test sur la ligne suivante (un compteur ++)
}
else
{
trouve = vrai
}
}
if(trouve = faux) // le matricule n'existe donc pas dans la liste
{
j'insère dans la list view le nom / prénom / matricule
}

Ici c'est juste la partie " while { if{} else{} } " que je ne vois pas comment faire, si vous pourriez m'éclairer ça serait cool merci d'avance.