Pblema con Indexof e ricerche doppie...

martedì 16 ottobre 2007 - 11.29

Mars Profilo | Newbie

Ho una listview in cui inserisco dei nominativi, il problema mi si presenta al momento della ricerca. Se ho valori tipo:

guido

francesca

maria


funziona tutto bene!

se i valori sono

maria

maria paola

franco

Ho il problema ovvero cercando maria ho valore di a= 0 sia per maria che per maria paola, per cui avvenendo la ricerca in un ciclo for ho che il valore maria mi viene aggiunto sia quando l'indexof trova maria sia quando trova "maria paola".


Come faccio ad evitare che ci sia la ricerca anche in porzione dell'item del listview?

Ecco la porzione di codice che va corretta.
Il codice sorgente non è stato renderizzato qui
perchè non c'è sufficiente spazio.
Clicca qui per visualizzarlo in una nuova finestra
Stranamente ho provato anche ad inserire una verifica all'atto dell'inserimento nomi fatta nello stesso modo, ma in questo caso non mi trova nomi doppi!?!?!
string controllo = tb_immissiongiocatori.Text; for (i = 0; i < lb_giocatori.Items.Count; i++) { int trova = lb_giocatori.Text.IndexOf(controllo); if (trova > -1) { MessageBox.Show("Nome ambiguo, modificarlo"); return; } }


Un aiuto sarebbe molto gradito almeno per capire come risolvere il problema!! Grazie in anticipo

amelix Profilo | Expert

Se fai una ricerca usando IndexOf è giusto che te ne trovi + di una.
Ma come mai devi usare indexof e non un semplice ==?

> int a = punti.lv_tavoliriepilogo.Items.SubItems[j].Text.IndexOf(player);

con

> bool trovato = (punti.lv_tavoliriepilogo.Items.SubItems[j].Text == player);
Andrea - http://www.MelisWeb.eu/

Mars Profilo | Newbie



Grazie ci ho messo un secondo a correggere tutto e finalmente ho risolto il problema

grazie mille

ps: perche' non ci avevo pensato!!
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5