Verifier si un item se trouve dans un ListBox

francesdereve Messages postés 75 Date d'inscription mardi 6 décembre 2005 Statut Membre Dernière intervention 6 août 2007 - 24 mai 2006 à 23:10
gyzmo222 Messages postés 66 Date d'inscription lundi 27 juin 2005 Statut Membre Dernière intervention 2 juin 2006 - 25 mai 2006 à 12:58
J'ai un list qui a ete bind ainsi pour afficher tous les noms et les prenoms des clients.Voici le code
Mon probleme quand on supprime ce client son nom se trouve toujours dans la liste.Comment en supprimant le client ,de supprimer en meme temps son nom dans la listbox.Il est a remarquer que la listeBox contient plusieurs nom,si l'utilisateur effectue trois recherches la listeBox aura trois nom clients.Comment en supprimant le client,arrivez a supprimer son nom dans la listBox.
Voici le code qui met les noms dans la listBox suivant
public

void remplirList(
bool falsia){

list +="(Nom='"+

this.nompatient+"' AND Prenom='"+
this.prenompatient+"')";

if(!falsia){

this.listBox.DataSource=
null;

}

else{

System.Data.DataRow[] rowList=

this..dataSetVue.V_Client.Select(
this.listBox);

this..listBoxr.DataSource = rowList ;

this.listBox.DisplayMember = "NomPrenom";

this.listBox.ValueMember = "T_Personne";

listBoxSelect +=" OR ";

}

}

La methode qui essaie de supprimer le nom dans la liste quand on supprime la personne
private

void SupprimerListBox(){

if(
this.listBox.Items.Contains((
object)
this.nomt+" "+
this.prenom)){

this..listBox.Items.Remove(
this.nom+" "+
this.prenomt);

}

Mais ca ne marche pas.Comment supprimer le nom en question dans la listBox

FD

2 réponses

cs_coq Messages postés 6349 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 101
25 mai 2006 à 10:59
Salut,

Essaie de regarder du côté des méthodes FindString et/ou FindStringExact.

/*
coq
MVP Visual C#
*/
0
gyzmo222 Messages postés 66 Date d'inscription lundi 27 juin 2005 Statut Membre Dernière intervention 2 juin 2006 1
25 mai 2006 à 12:58
Salut,

Moi je verrais un truc du style
foreach (string i in talistbox.items)
{
if (i.contains(nom) && i.contains(prenom)) talistbox.items.Remove(i);
}

Vérifier bien sur que nom et prenom contiennent bien ce que tu veux rechercher. Bien sur il faut tenir compte que la listbox ne doit pas contenir 5000 items Si tu pense que ca va ralentir, ya meme moyen de mettre un break dans le if pour sortir du foreach dès que l'élément est trouvé ou pour ne supprimer qu'un seul élément de ce type (le premier trouvé). Mais tu peux déja avoir beaucoup d'items pour ralentir un petit test comme ca.
0
Rejoignez-nous