Oppure

Loading
31/10/09 22:01
dedalux
Sera a tutti gente,
ho una listview, multiselect = false, e tre colonne.
Duqnue al doppio click su un elemento naviga in un browser secondo il link contenuto nella terza colonna (secondo subitem di quello selezionato).
In questa lista ci sono alcuni item che hanno due subitem, di cui il secondo contiene il link, altri invece ne hanno un solo, quindi al doppio click su di loro non accade nulla.
Non riesco a trovare il codice x verificare l'esistenza del secondo subitem.

Al click dovrebbe verificarsi

Click

Se elemento_selezionato.contiene_un_subitem_all'indice_2 e questo_subitem.ha_un_testo allora
naviga_con_quel_testo
Fine

io ho scritto questo ma ritorna un'errore

Private Sub Lista_DoubleClick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Lista.DoubleClick
        If Lista.SelectedItems.Item(0).SubItems.Count = 2 And Lista.SelectedItems.Item(0).SubItems(2).Text.Length > 0 Then
            Form2.wbr1.Navigate(Lista.SelectedItems.Item(0).SubItems(2).Text)
        End If
    End Sub


mi dareste una manina pls?
grazie
aaa
31/10/09 22:57
Mte90
che errore ritorna?
Se è un eccezione potresti mettere tutto in un try.
Nel try metti questo codice e il catch lo lasci vuoto o ci metti un'avviso che dice che non ci sono subitem.
aaa
31/10/09 23:56
dedalux
Errore:

System.ArgumentOutOfRangeException: InvalidArgument=Valore di '2' non valido per 'index'.
Nome parametro: index
in System.Windows.Forms.ListViewItem.ListViewSubItemCollection.get_Item(Int32 index)
in WindowsApplication1.Form1.Lista_DoubleClick(Object sender, EventArgs e) in Path.....\Form1.vb:riga 112

edit: io comunque ho bisogno di distinguere i due casi, poichè in un altro punto del codice, in caso manchi il secondo subitem, eseguo un'azione differente
Ultima modifica effettuata da dedalux 01/11/09 0:21
aaa
01/11/09 12:31
Il Totem
Sai che SubItems(2) indica il terzo elemento, vero?
aaa
01/11/09 12:48
dedalux
Terzo elemento ma secondo subitem
aaa
02/11/09 7:48
GoLDBeRG
cambia gli indici il codice è giusto o è il subitem sbagliato o non hai 3 item
aaa
02/11/09 12:48
dedalux
Il subitem non è sbagliato, altrimenti non farebbe la cosa giusta quando chiedo la navigazione col testo contenuto nel secondo subitem.
Non capisco la tua ipotesi dei 3 items, io posso selezionarne solo uno. Dobbiamo metterci d'accordo su cosa intendiamo x item. Io, per distinguerli, intendo item solo l'elemento della prima colonna, dalla seconda compresa in poi sono subitem.
aaa
02/11/09 16:39
Il Totem
If Lista.SelectedItems.Item(0).SubItems.Count = 2 And   Lista.SelectedItems.Item(0).SubItems(2).Text.Length > 0 Then
  Form2.wbr1.Navigate(Lista.SelectedItems.Item(0).SubItems(2).Text)
End If

Se SubItems.Count = 2, non può esistere SubItems(2) poiché si tratta del terzo elemento.
aaa