Originariamente inviato da mardok30
Per il codice di esempio che ho postato funzionano le tue correzioni, adesso devo applicarlo al mio caso reale, che,per me, è più rompi...


Così mi colora tutto il testo con il colore presente nell'ultimo if in cui entra.

Ma figliolo, se non tenti di entrare nella logica di programmazione e chiedi solo il codice per risolvere il problema non diventerai mai un vero programmatore. Conoscere come funzionano i controlli o le classi non fanno di una persona un programmatore.

Detto questo devo chiederti: perchè non vai subito al sodo senza tante circonlocuzioni?
Il problema da te posto inizialmente è diverso da quello che propono adesso.
Comunque, se ho capito quel che vuoi ottenere il codice và così corretto in quanto è evidente che non ti è ancora chiaro perchè Start viene calcolato in quel modo.

Do While DataReader.Read()
If Trovato = trueThen
testo = "Trovato:"

testolength = testo.Length

Start = EsitoRicerca.length

EsitoRicerca.AppendText(testo & vbCrLf)
EsitoRicerca.Select(Start, testo.Length)
EsitoRicerca.SelectionColor = Color.Blue

testo = "Si"
testolength = testo.Length

Start = EsitoRicerca.length


EsitoRicerca.AppendText(testo & vbCrLf)
EsitoRicerca.Select(Start, testo.Length)
EsitoRicerca.SelectionColor = Color.Green

Else
testo = "Trovato"
testolength = testo.Length

Start = EsitoRicerca.length

EsitoRicerca.AppendText(testo & vbCrLf)
EsitoRicerca.Select(Start, testo.Length)
EsitoRicerca.SelectionColor = Color.Blue

testo = "NO"
testolength = testo.Length

Start = EsitoRicerca.length

EsitoRicerca.AppendText(testo & vbCrLf)
EsitoRicerca.Select(Start, testo.Length)
EsitoRicerca.SelectionColor = Color.Red
End If
count += 1
Loop


Ciao.