Domanda

Quando aggiungo nuovi valori a una visualizzazione elenco usando:

    Set lstView = ListView(0).ListItems.Add(, , txtName)
    lstView.ListSubItems.Add , , txtValue
    lstView.Refresh

L'unico problema è che questo visualizza solo una nuova riga vuota nella visualizzazione elenco, hai idea di come aggiornarlo correttamente?

Normalmente sto usando un recordset, quindi cancella semplicemente quindi ripopola i dati ma ho bisogno che l'utente sia in grado di aggiungere voci alla lista. Scorrerò quindi la visualizzazione elenco aggiungendo i valori al DB solo una volta che l'utente ha terminato di modificare la visualizzazione elenco.

Grazie in anticipo per qualsiasi aiuto.

È stato utile?

Soluzione

Supponendo che la proprietà .View di ListView sia impostata su " Report " ;, quanto segue aggiungerà un paio di righe al controllo e imposterà il testo dell'elemento secondario.

Dim li As ListItem

With ListView1
    .ColumnHeaders.Add , , "One"
    .ColumnHeaders.Add , , "Two"
    .ColumnHeaders.Add , , "Three"

    Set li = .ListItems.Add(, , "Row1Item1")
    li.SubItems(1) = "Row1Item2"
    li.SubItems(2) = "Row1Item3"

    Set li = .ListItems.Add(, , "Row2Item1")
    li.SubItems(1) = "Row2Item2"
    li.SubItems(2) = "Row2Item3"
End With
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top