>ragazzi grazie ma ho già risolto così
>
>private sub btn(byval sender as system.object, byval e as system.eventargs)
>handless btn.click
>lst.listviewitemsorter = new listviewitemcomparer(2)
> lst.sort
>end sub
Bene!
Da autodidatta con i parametri ho litigato per un bel pò prima di capirci qualcosa....
Piccolo nota....ho provato il tuo codice e VS ritorna un' avviso di conversione implicita in "list = sender" qui:
Private Sub lst_ColumnClick(ByVal sender As Object, ByVal e As System.Windows.Forms.ColumnClickEventArgs) Handles lst.ColumnClick
Dim list As New ListView
list = sender
list.ListViewItemSorter = New ListViewItemComparer(e.Column)
list.Sort()
End Sub
Se apri la scheda del progetto e vai in "compilazione" ci sono tre avvisi su "nessuno", io ho preso l' abitudine di impostarli su "Avviso" in modo da evitare delle sorprese...dovresti fare una conversione tra "oggetti" o dichiarare "sender" come "ListView", in questo modo eviti l' avviso e sender eredita proprietà e metodi della ListView, quindi potresti scrivere la Sub così:
Per il discorso del Button che richiama la tua Sub, come ti dicevo, devi passare parametri compatibili a quelli dichiarati, un' oggetto(sender) che è la listview e ColumnClickEventArgs che restituisce l' indice della colonna cliccata cioè un "numero"....credo di aver spiegato malissimo il concetto...comunque, per richiamare la Sub lst_ColumnClick al click del button puoi scrivere:
lst_ColumnClick(lst, New ColumnClickEventArgs(1))
dove "1" è l' indice della colonna, occhio che l' indice parte da zero.
Vedi tu se può servirti questa "spiegazione".......
Ciao!