Ciclare i dati in una listview

venerdì 26 settembre 2008 - 10.36

trinity Profilo | Guru

carico i dati in una listview. Questa list è invisibile, in quanto solo il cliente decide se voler vederei dati oppure no, se la visualizzo i dati sono caricati benissimo.
In modalità invisibile devo effettuarci un ciclo for per controllare dei parametri. Il codice che utilizzo è il seguente:

For t As Int32 = 0 To CInt(Me.TextBox1.Text) - 1
Me.ListView5.Items(t).Selected = True
If CDate(Me.ListView5.SelectedItems(t).SubItems(1).Text) > CDate(Me.MaskedTextBox2.Text) Then
MessageBox.Show("Attenzione è stato riscontrato che la data di partenza è inferiore alla data di arrivo di alcuni movimenti." & Chr(10) & "Impossibile procedere con il salvataggio dei dati." & Chr(10) & _
Chr(10) & "Per ulteriori controlli è stata visualizzata la finestra che mostra in modo analitico tutti i movimenti scelti per la partenza.", "C59.Net", MessageBoxButtons.OK, MessageBoxIcon.Exclamation)
Me.MaskedTextBox1.Focus()
Me.MaskedTextBox1.SelectAll()
Return
End If
Next

ma appena il debug passa sulla riga: If CDate(Me.ListView5.SelectedItems(t).SubItems(1).Text) ....
mi esce il seguente messaggio:

InvalidArgument=Valore di '0' non valido per 'index'. Nome parametro: index

come mai?

se invece lascio la listview visibile funziona tutto.
Ma io non devo lasciarla visibile e pertanto come posso fare?

Ciao
Cirillo Fabio
www.wondernet.biz
fabio@wondernet.biz
http://blogs.dotnethell.it/fabiocirillo/
http://wnetsoftware.blogspot.com

Brainkiller Profilo | Guru

>ma appena il debug passa sulla riga: If CDate(Me.ListView5.SelectedItems(t).SubItems(1).Text)
>mi esce il seguente messaggio:
>InvalidArgument=Valore di '0' non valido per 'index'. Nome parametro:

Stai utilizzando SelectedItems ma se la ListView5 è quella invisibile come fa ad essere valorizzato SelectedItems ? Per questo ti dice che 0 non è valido perchè SelectedItems è vuota. Prima di ciclare dovresti fare un controllo su SelectedItems e vedere se è valorizzato.
Ciao

David De Giacomi | Microsoft MVP
http://blogs.dotnethell.it/david/

trinity Profilo | Guru

eseguo il codice:

Me.ListView5.Items(t).Selected = True

ha l'indice iniziale =0

e non mi da errore se ci passo sopra..

cmq secondo te come potrei procedere nel mio caso? Un consiglio?

e se dovessi utilizzare un datagridview? vale lo stesso principio?


Cirillo Fabio
www.wondernet.biz
fabio@wondernet.biz
http://blogs.dotnethell.it/fabiocirillo/
http://wnetsoftware.blogspot.com
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-2023
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5