Questo sito utilizza cookies, anche di terze parti, per mostrare pubblicità e servizi in linea con il tuo account. Leggi l'informativa sui cookies.
Username: Password: oppure
C# / VB.NET - [c#] cercare gli items nella listbox
Forum - C# / VB.NET - [c#] cercare gli items nella listbox

Avatar
file001 (Normal User)
Rookie


Messaggi: 32
Iscritto: 18/06/2013

Segnala al moderatore
Postato alle 23:03
Sabato, 02/01/2016
Salve,

ho creato in un form una listbox e una textbox. quando digito nella textbox un nome mi deve selezionare l'item che io sto cercando e fino a qui non c'è nessun problema. infatti, ho usato questo codice

Codice sorgente - presumibilmente C# / VB.NET

  1. if (textbox.Text != string.Empty)
  2.             {
  3.                 int index = listBox3.FindString(textbox.Text);
  4.                 if (index != -1)
  5.                     listBox3.SetSelected(index, true);
  6.  
  7.             }



il problema nasce quando nella listbox ci sono due items che sono uguali o sono simili cioè mi spiego con un esempio...se in una listbox ci sono questi items:

TEST
TEST1
TEST
TEST2

se io digito test mi seleziona solo il primo item, ma se io volessi che mi selezionasse il terzo item? non vorrei usare quella proprietà della listbox dove c'è scritto "multiselection"

mi potete dare una mano?


pierotofy.it
PM Quote
Avatar
Template (Member)
Pro


Messaggi: 175
Iscritto: 09/12/2015

Segnala al moderatore
Postato alle 11:41
Domenica, 03/01/2016
Non entro nelle specifiche del linguaggio che stai usando (ne so poco), ma andando per logica ritengo che tu voglia l'impossibile: qualsiasi ipotetico algoritmo di ricerca può ritornarti o il primo risultato corrispondente alla chiave di ricerca o il "best match", ed in entrambi i casi non corrisponde a quello che hai in mente.
Tra l'altro, mi chiedo: in base a che cosa il tuo programma dovrebbe distinguere il primo item dal terzo? Cosa fa in modo che un algoritmo di ricerca possa ritenere nei casi opportuni il terzo elemento diverso dal primo (e dunque ad esso preferibile)?


"Nel curriculum scrivete quello che sapete fare... e anche quello che non sapete fare! Tipo: "Già vescovo di Cracovia, partecipai alla Coppa America, vincendola!""
[...]
"Sto giocando al piccolo Dio e mi sta venendo pure alla grande."
PM Quote
Avatar
Roby94 (Member)
Guru


Messaggi: 1127
Iscritto: 28/12/2009

Segnala al moderatore
Postato alle 13:19
Domenica, 03/01/2016
Testo quotato

Postato originariamente da file001:

se io digito test mi seleziona solo il primo item, ma se io volessi che mi selezionasse il terzo item?


Con quale logica? Devi sempre selezionare l'ultima ricorrenza uguale? Quella uguale e in caso di casi multipli quella con index piu grande? Se non spieghi la logica di funzionamento ma solo un esempio allora alla tua domanda sarebbe valido rispondere con un
Codice sorgente - presumibilmente Plain Text

  1. listBox3.SetSelected(2, true);



La programmazione è arte... fa che i tuoi script siano degni di un museo.
PM Quote