Ciao il mio problema è il seguente:

Utilizzo la classe System.Sintesys.Speak per avere la possibilita di far leggere al computer una determinata parola o frase.

Viene eseguito un ciclo For..Next e ad ogni esecuzione viene letta un riga del datagridview.

Esempio di codice:

'Dichiaro la voce
Dim Voce as New Voice
Voice.Volume=100
Voice.Rate=10

'Imposto il datagridview
Datagridview1.Datasource=MiaTabella

'Eseguo il ciclo
For i as integer = 0 to Datagridview1.Rows.Count-1

voce.Speak("Record numero " & i & " , " & Datagridview1.Rows(i).Item(0).Tostring)

next i

Vorrei poter interrompere la voce quando desidero attraverso il metodo

Voce.Pause

che funzionerebbe se non per il fatto che finchè il ciclo non è terminato l'esecuzione di tale comando viene messo in attesa e viene eseguito solo alla fine.

Non è che il button2 responsabile della pausa non sia abilitato o non funzioni e che se cliccato durante il ciclo è come se non funzionasse e addirittura se cliccato piu volte blocca l'intera applicazione

Spero di essere stato chiaro e che qualcuno di voi possa aiutarmi