Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2006
    Messaggi
    455

    [VB.NET]Spostare valore piu' grande di tutti

    Ciao a tutti,

    Ho una Listview composta da Item e SubItem.

    Nell'item ho il nome e nel subItem ho il punteggio.

    Praticamente è una sorta di classifica.

    Vorrei che quello con il punteggio maggiore di tutti sia il primo...quindi dal grande al piu' piccolo...

    Ho scritto un piccolo codice che non so come continuare...

    codice:
            Dim item As ListViewItem
    
            item = ListView1.Items(0)
    
            For Each item In ListView1.Items
    
                If item.SubItems(1).Text > Score Then
    
                    item.Selected = True
    
                    MsgBox(ListView1.SelectedItems(0).Text)
    
                End If
    
            Next
    Qualcuno ha idea di come posso realizzare questa cosa?

  2. #2
    Utente di HTML.it
    Registrato dal
    May 2011
    Messaggi
    119
    Creazione di una sortedlist a partire dalle righe del listview
    Azzeramento del listview
    Rigenerazione.
    Se invece ti è sufficiente ordinare il tutto per una colonna allora puoi implementare l'ordinamento discendente / ascendente mediante il click sulla header.
    Se usi un datagridview e un datatable come origine dati l'ordinamento ce l'hai automaticamente "gratis".

  3. #3
    Utente di HTML.it
    Registrato dal
    Jul 2006
    Messaggi
    455
    Originariamente inviato da cyanuro
    Creazione di una sortedlist a partire dalle righe del listview
    Azzeramento del listview
    Rigenerazione.
    Se invece ti è sufficiente ordinare il tutto per una colonna allora puoi implementare l'ordinamento discendente / ascendente mediante il click sulla header.
    Se usi un datagridview e un datatable come origine dati l'ordinamento ce l'hai automaticamente "gratis".
    Queste soluzioni le ho trovate parecchio complicate in quanto devo fare il sorting sulla subitem.

    Pensavo in alternativa a fare qualcosa del tipo: se l'ultimo item aggiunto è maggiore di quello precedente allora lo scali di un posto.

    codice:
            Dim L As ListViewItem
            Dim Index As Integer
    
            L = ListView1.SelectedItems(0)
    
            Index = ListView1.SelectedIndices(0)
    
            If L.Text > Index - 1 Then
    
                ListView1.Items.RemoveAt(Index)
    
                ListView1.Items.Insert(Index - 1, L)
    
            Else
    
                MsgBox("nothing2")
    
            End If
    stavo iniziando in questo modo ma non so come indicare l'item precedente a quello selezionato...

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.